文档章节

windows下使用nginx部署django程序

r
 ranvane
发布于 2014/11/13 00:28
字数 382
阅读 4116
收藏 2

代码实在win下写的,索性就在win下使用nginx部署一下以作测试,不想问题出来了,一直提示400错误,好在经过一番周折解决了。现在就将这个纠结的过程分享一下:

环境:

django1.7

upupw集成包

1、首先应该改的地方,这个大家应该都知道:

DEBUG = TEMPLATE_DEBUG = False#将debug设置为False

2、改一下ALLOWED_HOSTS,我死死的就将这个给忘了,我的配置:

if DEBUG:#根据DEBUG来确定
    ALLOWED_HOSTS = [""]
else:
    ALLOWED_HOSTS = ["localhost","127.0.0.1"]

3、重头戏来了,配置nginx:

这里相关的代码网上很多,但是几乎都没有说明一件事:

配置location ~ ^/static/ 的位置,一定要在location ~ ^/的前面,而且不能单纯的使用 location /static/  或者location /static ,不然,static文件夹中的静态文件都不能加载!!!

我的配置文件:

        location ~ ^/static/ {  
            root F:/develop/upupw/htdocs/gwdj; #Django项目所在目录,不能包含static文件夹
            expires 30d;  
            break; 
        }
        
        location ~ ^/ {
            root   F:/develop/upupw/htdocs/gwdj;
            
            #root   html;
            index  index.html index.htm;
             
            # host and port to fastcgi server
            fastcgi_pass 127.0.0.1:8051;
            fastcgi_param PATH_INFO $fastcgi_script_name;
            fastcgi_param REQUEST_METHOD $request_method;
            fastcgi_param QUERY_STRING $query_string;
            fastcgi_param SERVER_NAME $server_name;
            fastcgi_param SERVER_PORT $server_port;
            fastcgi_param SERVER_PROTOCOL $server_protocol;
            fastcgi_param CONTENT_TYPE $content_type;
            fastcgi_param CONTENT_LENGTH $content_length;
            fastcgi_pass_header Authorization;
            fastcgi_intercept_errors off;     
        }

ps:提起这个,慢慢的泪啊,就错在这里了。。。。。

5、运行

在django项目文件夹下运行:

python manage.py runfcgi method=threaded host=127.0.0.1 port=8051

嫌麻烦可以写成批处理,运行的时候双击一下就好了。

© 著作权归作者所有

共有 人打赏支持
r
粉丝 8
博文 59
码字总数 23323
作品 0
兰州
加载中

评论(2)

测试-說不
测试-說不
在windows下已安装flup6。
执行命令python manage.py runfcgi method=threaded host=127.0.0.1 port=8051时,提示runfcgi未发现,manage.py help去查看确实没有runfcgi,,,你们怎么有的?我得时py36
zhangqunshi
zhangqunshi
在windows下uwsgi不能正确安装,只能使用其他类型的CGI程序。
这里使用flup软件,flup负责与nginx之间通过网络接口(TCP链接)进行通信。
并将HTTP请求发送给Django程序。对于python3使用如下面命令进行安装:
```cmd
pip install flup6
```
如果出现问题, 可以尝试使用pip install flup命令安装。
使用Nginx+uWSGI方法部署Django web程序

在上一篇文章《五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上)》中,阐述了如何只使用uWSGI来部署Django程序。 当然,单单只有uWSGI是不够的,在实际的部署环境中,Nginx是必不可...

IamOkay
2016/04/16
87
0
django中使用日志文件记录信息

这两天一直在测试windows下nginx部署django程序,因为一些奇葩的问题,导致了部署不成功,而且不知道问题出在哪里,不得已,找了个django日志的配置文件修改、调试了一下,解决了问题。说起来...

ranvane
2014/11/13
0
0
Django + Uwsgi + Nginx 实现生产环境部署

今天老男孩IT教育Python教学导师吴sir带你用Django + Uwsgi + Nginx 实现生产环境部署 1、uwsgi 介绍 2、uwsgi安装使用 3、nginx安装配置 4、django with nginx 如何在生产上部署Django? Dja...

米斯特赛文
2017/04/06
0
0
Django之部署NGINX+uWSGI

参考地址:http://www.cnblogs.com/CongZhang/p/6548529.html http://www.cnblogs.com/alex3714/p/6538374.html http://uwsgi.readthedocs.io/en/latest/tutorials/Djangoandnginx.html ----......

LinQiH
2017/11/07
0
0
Django + Uwsgi + Nginx 实现生产环境部署

今天老男孩IT教育Python教学总监alex带你用Django + Uwsgi + Nginx 实现生产环境部署 1、uwsgi 介绍 2、uwsgi安装使用 3、nginx安装配置 4、django with nginx 如何在生产上部署Django? Dja...

alex3714
2017/04/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSX | SafariBookmarksSyncAgent意外退出解决方法

1. 启动系统, 按住⌘-R不松手2. 在实用工具(Utilities)下打开终端,输入csrutil disable, 然后回车; 你就看到提示系统完整性保护(SIP: System Integrity Protection)已禁用3. 输入reboot回车...

云迹
今天
4
0
面向对象类之间的关系

面向对象类之间的关系:is-a、has-a、use-a is-a关系也叫继承或泛化,比如大雁和鸟类之间的关系就是继承。 has-a关系称为关联关系,例如企鹅在气候寒冷的地方生活,“企鹅”和“气候”就是关...

gackey
今天
4
0
读书(附电子书)|小狗钱钱之白色的拉布拉多

关注公众号,在公众号中回复“小狗钱钱”可免费获得电子书。 一、背景 之前写了一篇文章 《小狗钱钱》 理财小白应该读的一本书,那时候我才看那本书,现在看了一大半了,发现这本书确实不错,...

tiankonguse
今天
4
0
Permissions 0777 for ‘***’ are too open

异常显示: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ......

李玉长
今天
5
0
区块链10年了,还未落地,它失败了吗?

导读 几乎每个人,甚至是对通证持怀疑态度的人,都对区块链的技术有积极的看法,因为它有可能改变世界。然而,区块链技术问世已经10年了,我们仍然没有真正的用上区块链技术。 几乎每个人,甚...

问题终结者
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部