windows下使用nginx部署django程序
博客专区 > ranvane 的博客 > 博客详情
windows下使用nginx部署django程序
ranvane 发表于3年前
windows下使用nginx部署django程序
  • 发表于 3年前
  • 阅读 3053
  • 收藏 2
  • 点赞 2
  • 评论 2

【腾讯云】如何购买服务器最划算?>>>   

摘要: 主要是windows下使用nginx部署django程序得一些注意事项

代码实在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

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

标签: windows flup nginx django
共有 人打赏支持
粉丝 6
博文 53
码字总数 22280
评论 (2)
zhangqunshi
在windows下uwsgi不能正确安装,只能使用其他类型的CGI程序。
这里使用flup软件,flup负责与nginx之间通过网络接口(TCP链接)进行通信。
并将HTTP请求发送给Django程序。对于python3使用如下面命令进行安装:
```cmd
pip install flup6
```
如果出现问题, 可以尝试使用pip install flup命令安装。
测试-說不
在windows下已安装flup6。
执行命令python manage.py runfcgi method=threaded host=127.0.0.1 port=8051时,提示runfcgi未发现,manage.py help去查看确实没有runfcgi,,,你们怎么有的?我得时py36
×
ranvane
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: