這篇文章主要介紹了uwsgi+nginx部署Django項目操作,結合實例形式簡單介紹了uwsgi的概念、原理、安裝、項目創建、配置、調試運行等相關操作技巧,需要的朋友可以參考下
本文實例講述了uwsgi+nginx部署Django項目操作。分享給大家供大家參考,具體如下:
uWSGI概述
uWSGI 是一個全功能的 HTTP 服務器,可以把 HTTP 協議轉化成語言支持的網絡協議。
安裝uwsgi
使用pip安裝即可
pip install uwsgi
安裝完成後可測試
#vim test.py def application(env, start_response): start_response('200 OK', [('Content-Type','text/html')]) return [b"Hello World"]
然後運行:
uwsgi --http :9090 --wsgi-file test.py
現在訪問 ip:9090,如果出現Hello World說明安裝成功
創建一個django項目
django-admin.py startproject hello
然後你的目錄是這樣的
hello /
├── hello
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── manage.py
確保Django應用能正常啓動
配置uwsgi.ini
#] vim /etc/uwsgi.ini #此文件可放在其它地方 [uwsgi] chdir=/work/hello/ #項目目錄 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相關命令
啓動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; } }
先啓動uwsgi,啓動nginx,一個簡單的nginx + uwsgi + django就完成了
希望本文所述對大家基於Django框架的Python程序設計有所幫助。