本文实例讲述了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程序设计有所帮助。
我遵循本教程,但我有一个问题,我得到了502 Nginx错误。 教程链接 我检查了错误日志,上面写着 uwsgi.log ImportError:没有名为khcards的模块。wsgi 我的uwsgi文件是这样的 我的nginx。形态 服务器{监听80;server_name域www.domain.co.uk;根 /var/www/example.com/src/khcards;access_lo
本文向大家介绍Python开发之Nginx+uWSGI+virtualenv多项目部署教程,包括了Python开发之Nginx+uWSGI+virtualenv多项目部署教程的使用技巧和注意事项,需要的朋友参考一下 1、新建独立运行环境,命名为env 2、激活虚拟环境 [root@vultr projects]# source env/bin/activate 执行后命令提示符前面会出现一个env
本文向大家介绍详解Django+Uwsgi+Nginx的生产环境部署,包括了详解Django+Uwsgi+Nginx的生产环境部署的使用技巧和注意事项,需要的朋友参考一下 使用runserver可以使我们的django项目很便捷的在本地运行起来,但这只能在局域网内访问,如果在生产环境部署django,就要多考虑一些问题了。比如静态文件处理,安全,效率等等,本篇文章总结归纳了一下基于uwsgi+Ng
本文向大家介绍Django uwsgi Nginx 的生产环境部署详解,包括了Django uwsgi Nginx 的生产环境部署详解的使用技巧和注意事项,需要的朋友参考一下 配置生产环境 创建Python虚拟环境 安装 virtualenv 克隆Python的环境 收集静态文件 先在settings中配置 STATIC_ROOT = os.path.join(BASE_DIR, 'static'
本文向大家介绍详解Django+Uwsgi+Nginx 实现生产环境部署,包括了详解Django+Uwsgi+Nginx 实现生产环境部署的使用技巧和注意事项,需要的朋友参考一下 uwsgi介绍 uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换。 要注意 WSGI / uwsgi / uWS
问题内容: 有人可以解释守护程序模式下的apache mod_wsgi和线程模式下的django fastcgi之间的区别。我认为它们都使用线程进行并发。 假设我将nginx用作Apache mod_wsgi的前端。 更新: 我正在比较在fastemon中内置的django(./manage.py method = threaded maxchildren = 15)和mod_wsgi在“守护程序