nginx+uwsgi部署django应用

Frank发布

几个月之前写了一个django应用,现在记录一下部署过程,不然之后需要的时候就该忘了。

准备工作

项目完成之后首先运行开发服务器测试,确保无误。

安装一些东西

安装supervisor,用来管理uwsgi

安装uwsgi

用uwsgi手动运行项目进行测试

按理说我们应该使用supervisor来管理uwsgi,然而我这里遇到了一些麻烦。在我的ubuntu测试环境上,只要一启动supervisord,内存就会蹭蹭蹭往上涨,直到全部内存都吃掉之后卡死。

Image 055

反正我也没有那么多的项目要管理,所以直接放弃这货。

配置uwsgi

向uwsgi.ini中写入:

socket=/tmp/project.sock这行需要记住,我们一会需要把它和nginx关联

完成之后我们先要让uwsgi跑起来,另外你也可以把这条命令写入rc.local来实现自启动。

配置nginx

测试并重启nginx。

关闭调试

测试无误后,需要将应用的调试模式关掉以确保安全。

进入settings.py

改为

一旦调试模式关闭,就必须设置下面的ALLOWED_HOSTS,否则访问时会报HTTP 400错误。

Done.


5 条评论

冻酸奶泡芙_RKMBI · 2015 年 12 月 20 日 上午 7:34

Google Chrome 47.0.2526.83 Google Chrome 47.0.2526.83 Android 5.0.2 Android 5.0.2

[哆啦A梦视奸]

    Frank  Mod · 2015 年 12 月 20 日 下午 12:35

    Google Chrome 48.0.2564.41 Google Chrome 48.0.2564.41 Windows 10 x64 Edition Windows 10 x64 Edition

    [哆啦A梦拉黑]

随风漂流的星光 · 2015 年 12 月 25 日 下午 9:24

Google Chrome 41.0.2255.0 Google Chrome 41.0.2255.0 Windows 7 x64 Edition Windows 7 x64 Edition

Mark~

    Frank  Mod · 2015 年 12 月 25 日 下午 9:33

    Google Chrome 47.0.2526.73 Google Chrome 47.0.2526.73 Windows 10 x64 Edition Windows 10 x64 Edition

    哇,吼久不见

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Captcha *

%d 博主赞过: