nginx uwsgi django supervisor 服务器配置

按照http://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html

遇到了很多坑,总结下:

安装需要的包

1:

# sudo apt-get install python-dev nginx  

(提示: 如果执行完显示不能安装,请更新aot-get, #sudo apt-get update)

2:

# sudo apt-get install uwsgi

3:

# sudo apt-get install supervisor

生成supervisor默认配置文件, 一般放在/etc/supervisord.conf路径中:

# echo_supervisord_conf > /etc/supervisord.conf


部署uwsgi

1:

打开/etc/supervisord.conf 在最底部添加(每一行前面不要有空格,防止报错):

[program:XXX]

command=/usr/local/bin/uwsgi --ini /www/XXX/XXX_uwsgi.ini

directory=/www/XXX

startsecs=0

stopwaitsecs=0

autostart=true

autorestart=true

2:

启动 supervisor

# sudo supervisord  -c  /etc/supervisord.conf

重启anytum项目:

# sudo supervisord  -c /etc/supervisord.conf  restart  XXX

启动,停止,或重启 supervisor 管理的某个程序 或 所有程序:

supervisorctl -c /etc/supervisord.conf [start|stop|restart] [program-name|all]


配置nignix

# cd /etc/nginx/

#ls

出现如下情况:

在 sites-available 中添加文件 XXX_nginx.conf:

# cd sites-available

# vi XXX_nginx.conf

将项目中XXX_nginx.conf的内容复制过来就可以了。

 

激活网站:

root@10-19-61-127:/etc/nginx/sites-enabled#

ln  -s  ../sites-available/XXX_nginx.conf  .XXX_nginx.conf

测试:

root@10-19-61-127:/etc/nginx/sites-available#  sudo service nginx configtest 

重启nginx服务器:

sudo service nginx reload 或者 sudo service nginx restart

 

到此部署已经完成

执行 uwsgi --http :8000 --wsgi-file test.py 总是没问题的,只要是http开头的都没问题
执行 uwsgi --socket :8001 --wsgi-file test.py 老是这步不能通过,加了--chmod-socket=666也不行

当然 uwsgi --socket XXX.sock --module XXX.wsgi --chmod-socket=666 也就不会执行了

最后发现是因为项目中已经有一个XXX.socket了,把XXX.socket删除后,执行就成功了,会重新生成一个XXX.socket


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值