nginx基於uwsgi部署Django

1.安裝nginxhtml

yum install -y nginx(須要epel源)

2.安裝uwsgipython

yum groupinstall "Development tools"
yum install zlib-devel bzip2-devel pcre-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
pip install -y uwsgi

3.安裝djangonginx

pip install django

4.建立django項目web

django-admin startproject mysite

5.建立appsql

python manage.py startapp  web

6.修改mysite/settings.pydjango

ALLOWED_HOSTS = ['*']

7.修改mysite/urls.pyapp

from app01 import views
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^hello_django/', views.hello),
]

8.修改web/view.pysocket

from django.shortcuts import render,HttpResponse

# Create your views here.
def hello(request):
    print('request is :',request)
    return HttpResponse('django is ok ')

9.啓動程序ui

uwsgi --http :8000 --module mysite.wsgi

10uwsgi配置文件url

uwsgi支持ini、xml等多種配置方式,本文以 ini 爲例, 在/etc/目錄下新建uwsgi_nginx.ini,添加以下配置:

[uwsgi]
http = 0.0.0.0:8000
#the local unix socket file than commnuincate to Nginx
socket = /data/mysite/mysit.socket
# the base directory (full path)
chdir = /data/mysite
# Django's wsgi file
wsgi-file = mysite/wsgi.py
# maximum number of worker processes
processes = 4
#thread numbers startched in each worker process
threads = 2
# clear environment on exit
vacuum          = true
daemonize = /data/mysite/uwsgi.log
py-autoreload=1

11.修改配置文件權限

chown nginx.root uwsgi_params

12.修改nginx配置文件

location / {
        include  /data/mysite/conf/uwsgi_params;
        proxy_pass http://127.0.0.1:8000;
            root   html;
            index  index.html index.htm;
        }
        }
location /static{
     alias /data/mysite/static;   
 }
     #nginx處理媒體資源
location /media{
     alias /data/mysite/media;  
 }

13.執行命令 遷移nginx靜態文件

STATIC_ROOT = os.path.join(BASE_DIR, "static/")
python manage.py collectstatic
相關文章
相關標籤/搜索