溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

uwsgi+nginx部署Django項(xiàng)目操作示例

發(fā)布時(shí)間:2020-09-20 17:07:35 來(lái)源:腳本之家 閱讀:179 作者:Yort2016 欄目:開(kāi)發(fā)技術(shù)

本文實(shí)例講述了uwsgi+nginx部署Django項(xiàng)目操作。分享給大家供大家參考,具體如下:

uWSGI概述

uWSGI 是一個(gè)全功能的 HTTP 服務(wù)器,可以把 HTTP 協(xié)議轉(zhuǎn)化成語(yǔ)言支持的網(wǎng)絡(luò)協(xié)議。

安裝uwsgi

使用pip安裝即可

pip install uwsgi

安裝完成后可測(cè)試

#vim test.py
def application(env, start_response):
  start_response('200 OK', [('Content-Type','text/html')])
  return [b"Hello World"]

然后運(yùn)行:

uwsgi --http :9090 --wsgi-file test.py

現(xiàn)在訪問(wèn) ip:9090,如果出現(xiàn)Hello World說(shuō)明安裝成功

創(chuàng)建一個(gè)django項(xiàng)目

django-admin.py startproject hello

然后你的目錄是這樣的

hello /
├── hello
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── manage.py

確保Django應(yīng)用能正常啟動(dòng)

配置uwsgi.ini

#] vim /etc/uwsgi.ini #此文件可放在其它地方
[uwsgi]
chdir=/work/hello/ #項(xiàng)目目錄
uid=root #可換成其它用戶和組
gid=root
module=hello.wsgi:application
socket=/work/hello/uwsgi.sock
master=true
workers=5
pidfile=/work/hello/uwsgi.pid
vacuum=true
thunder-lock=true
enable-threads=true
harakiri=30
post-buffering=4096
daemonize=/work/hello/uwsgi.log

uwsgi相關(guān)命令

啟動(dòng)uwsgi:uwsgi --ini /path/uwsgi.ini
停止uwsgi:uwsgi --stop /path/uwsgi.pid
重新加載配置:uwsgi --reload /path/uwsgi.pid

nginx配置

server {
  listen 8080;
  location /static {
    alias /work/hello/static; #Django project's static files
  }
  location / {
    include uwsgi_params;
    uwsgi_connect_timeout 30;
    uwsgi_pass unix:/work/hello/uwsgi.sock;
  }
}

先啟動(dòng)uwsgi,啟動(dòng)nginx,一個(gè)簡(jiǎn)單的nginx + uwsgi + django就完成了

uwsgi+nginx部署Django項(xiàng)目操作示例

希望本文所述對(duì)大家基于Django框架的Python程序設(shè)計(jì)有所幫助。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI