本文实例讲述了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程序设计有所帮助。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。