环境:
django:1.8.16
python:2.7.13
pip:2.7
uwsgi:2.0.15
project路径: /opt/cmdb/
Uwsgi的安装配置
1、安装python2.7 (省略安装过程)
2、安装pip2.7 (省略安装过程)
3、安装uwsgi(注意:要用pip2.7安装)
4、配置uwsgi.ini
路径: /opt/cmdb/uwsgi.ini
文件内容:
[root@localhost cmdb]# cat uwsgi.ini
Uwsgi:常用参数和选项
关于参数的具体使用,可以阅读官方文档http://uwsgi-/en/latest/Options.html,在这里列出一些常用的参数:
chdir 项目目录
home virtualenv目录(如没有运行virtualenv虚拟环境,则无需设置)
socket 套接字文件或TCP套接字,例如:site1.uwsgi.sock 或 127.0.0.1:8000
uid 用户id
gid 用户组id
processes 工作进程数
harakiri 进程超过该时间未响应就重启该进程(默认单位为秒)
module 要启动的wsgi模块入口,如:mysite.wsgi:application
ini 指定ini配置文件
xml 指定xml配置文件(与ini类似)
file 指定要运行的wsgi程序文件,如:test.py
emperor Emperor模式
so-keepalive 开启TCP KEEPALIVE(unix套接字方式下无效)
uwsgi服务init脚本 /etc/init.d/cmdb
Nginx安装配置
1、安装nginx
2、配置nginx
[root@localhost cmdb]# cat /etc/nginx/conf.d/cmdb.conf
启动站点
1、启动nginx服务
/etc/init.d/nginx start (删除默认的default.conf配置)
2、启动uwsgi
/etc/init.d/cmdb start
排错:
1、在实际操作中发现,启动uwsgi服务后,访问站点出现“502 Bad Gateway”的报错,后来发现是在settings中设置了不允许访问站点
改成
后问题解决。
2、由于python2.6 不支持django1.8 ,所以需要在服务器上安装python2.7,并且在安装之前,最好输入以下命令,将可能用到的包都装上,否则出现问题时,需要重新编译安装python2.7
3、用pip安装uwsgi时,一定要用pip2.7(用python2.7安装的pip) 进行安装
4、invalid request block size: 4161 (max 4096)...skip报错解决
在访问站点时,出现了invalid request block size: 4161 (max 4096)...skip报错解决的报错。
解决办法是在uwsgi.ini配置文件中增加一条配置:buffer-size = 102400
将buffer-size设置大一些
本文转自 曾哥最爱 51CTO博客,原文链接:/zengestudy/1930346,如需转载请自行联系原作者