uwsgi+django+nginx 搭建部分总结
环境:Cent7.5+Django2.1.2+uwsgi2.0.17+nginx1.12.2
第一、uwsgi协议
1.uwsgi协议说明
uwsgi 是基于wsgi 协议的一个应用。wsgi 是网页服务器网关接口协议,用来解决http request、response的消息。
uwsgi 2.0.17 基于python2 下的pip install uwsgi 来安装,可以通过xml或者ini文件格式来做初始化配置。
2.应用说明
这里用ini配置。conf.ini内容如下:
[uwsgi]
socket=:8080
chdir=/home/website/hourseWebSiteProject
#wsgi-file=hourseWebSiteProject/wsgi.py
module=hourseWebSiteProject.wsgi
pidfile=pid.uwsgi
master=true
processes=4
threads=2
buffer-size=32768
virtualenv=/home/website/ll_env
daemonize=UWSGI.log
vacuum=true
socket=:8080 是用来配置nginx 服务器,用来建立socket通信的,假如单独启用测试运行django服务器,让外网访问设置为http=:8080 。指定任何地址可以访问。
chidir 用来指定Django的项目目录。
module 指定wsgi文件
virtualenv 指定安装的Python3 安装的虚拟环境,运行uwsgi 协议应用是在虚拟环境目录下进行的.
命令:source ll_env/bin/activate
/home/website/ll_env 为建立的虚拟环境目录路径,此处使用的是python3.5+django 2.0.7环境
daemonize 指定uwsgi运行在后端
2.1 启用uwsgi
uwsgi --ini conf.ini
#以上命令启用uwsgi,用cat UWSGI.log 查看当前目录下uwsgi生成的日志信息是什么
netstat -ntlp
#此命令查看端口8080 队友的uwsgi 服务能否启用。
2.3 关闭uwsgi
(ll_env) [root@192 hourseWebSiteProject]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:10022 0.0.0.0:* LISTEN 999/sshd
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1641/nginx: master
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1628/uwsgi
tcp6 0 0 :::10022 :::* LISTEN 999/sshd
tcp6 0 0 :::3306 :::* LISTEN 1037/mysqld
#查找到 uwsgi 的进程号PID 1628 用以下命令关闭
kill -9 1628
第二、nginx 服务器使用
1. nginx详情
nginx是web应用中继服务器用来转发网页请求,将网页请求转发为uwsgi 网关应用。
当uwsgi配置启动成功后,需要配置nginx。
首先Django 项目的工程下的setting.py 下的DEBUG=True 。假如DEBUG 改为False ,Django 项目就不能自动索引Static静态文件了,这个时候就通过nginx来提供静态文件的目录了,同时template 中的网页模板中的引入文件路径就要修改了。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » uwsgi+django+nginx 搭建部分总结