uwsgi+nginx部署Django项目操作示例

Eirene ·
更新时间:2024-11-10
· 536 次阅读

本文实例讲述了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程序设计有所帮助。

您可能感兴趣的文章:Docker容器化部署尝试——多容器通信(node+mongoDB+nginx)详解基于Vue,Nginx的前后端不分离部署教程docker nginx 部署多个项目的示例方法解决vue项目nginx部署到非根目录下刷新空白的问题vue项目打包部署_nginx代理访问方法详解详解vue通过NGINX部署在子目录或者二级目录实践nginx部署.net core站点的方法Nginx配置SSL证书部署HTTPS网站的方法(颁发证书)基于nginx的静态网页部署的实现使用nginx模拟进行蓝绿部署的方式



django项目 示例 uwsgi Django Nginx

需要 登录 后方可回复, 如果你还没有账号请 注册新账号