文档章节

windows下使用nginx部署django程序

r
 ranvane
发布于 2014/11/13 00:28
字数 382
阅读 3664
收藏 2
点赞 2
评论 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
博文 55
码字总数 22691
作品 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 ⋅ 0

django中使用日志文件记录信息

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

ranvane ⋅ 2014/11/13 ⋅ 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

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

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

Ubuntu上通过nginx部署Django笔记

Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式。今天在Ubuntu上使用Nginx部署Django服务,虽然不是第一次搞这个了,但是发现还是跳进了好多坑,google了好久才...

j_hao104 ⋅ 2016/11/16 ⋅ 0

Django 1.6 部署

准备工作 首先,将 settings.py 内的 DEBUG 和 TEMPLATE_DEBUG 项设为 False。 然后,在 templates 目录下实现 404 和 500 模板。 设置错误警告 引发代码异常时将给 ADMINS 内的邮件地址发送...

lionets ⋅ 2014/04/13 ⋅ 1

Nginx + uWSGI + Python + Django部署实例

Nginx: Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性: 作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Ng...

谢育政 ⋅ 2017/06/13 ⋅ 0

uWSGI+Nginx+Django安装和配置

WSGI是为python语言定义的通用网关接口,它承担python web框架(django、flask、web.py等)和web服务器(nginx、apache、lighttpd等)之间的中间层。 浏览器 chrome、firefox、ie等 python中...

好铁 ⋅ 2016/03/09 ⋅ 0

Django学习(一)网站部署流程

部署业务流程 零、已经具备的条件 django项目在建立之初,就预留了uwsgi的接口。我在学习了整个项目部署流程之后,感觉到这应该算是最简单的部署方式了。 在此我要特别感谢我的好友@小飞侠,...

敖瑞_rick ⋅ 01/11 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

骰子游戏代码开源地址

因为阿里云现在服务器已经停用了,所以上面的配置已经失效。 服务端开源地址:https://gitee.com/goalya/chat4.git 客户端开源地址:https://gitee.com/goalya/client4.git 具体运行界面请参考...

算法之名 ⋅ 28分钟前 ⋅ 0

设计模式--装饰者模式

装饰者模式 定义 动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更为灵活。 通用类图 意图 动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比...

gaob2001 ⋅ 今天 ⋅ 0

JavaScript零基础入门——(八)JavaScript的数组

JavaScript零基础入门——(八)JavaScript的数组 欢迎大家回到我们的JavaScript零基础入门,上一节课我们讲了有关JavaScript正则表达式的相关知识点,便于大家更好的对字符串进行处理。这一...

JandenMa ⋅ 今天 ⋅ 0

sbt网络问题解决方案

转自:http://dblab.xmu.edu.cn/blog/maven-network-problem/ cd ~/.sbt/launchers/0.13.9unzip -q ./sbt-launch.jar 修改 vi sbt/sbt.boot.properties 增加一个oschina库地址: [reposit......

狐狸老侠 ⋅ 今天 ⋅ 0

大数据,必须掌握的10项顶级安全技术

我们看到越来越多的数据泄漏事故、勒索软件和其他类型的网络攻击,这使得安全成为一个热门话题。 去年,企业IT面临的威胁仍然处于非常高的水平,每天都会看到媒体报道大量数据泄漏事故和攻击...

p柯西 ⋅ 今天 ⋅ 0

Linux下安装配置Hadoop2.7.6

前提 安装jdk 下载 wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz 解压 配置 vim /etc/profile # 配置java环境变量 export JAVA_HOME=/opt/jdk1......

晨猫 ⋅ 今天 ⋅ 0

crontab工具介绍

crontab crontab 是一个用于设置周期性被执行的任务工具。 周期性执行的任务列表称为Cron Table crontab(选项)(参数) -e:编辑该用户的计时器设置; -l:列出该用户的计时器设置; -r:删除该...

Linux学习笔记 ⋅ 今天 ⋅ 0

深入Java多线程——Java内存模型深入(2)

5. final域的内存语义 5.1 final域的重排序规则 1.对于final域,编译器和处理器要遵守两个重排序规则: (1)在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用...

江左煤郎 ⋅ 今天 ⋅ 0

面试-正向代理和反向代理

面试-正向代理和反向代理 Nginx 是一个高性能的反向代理服务器,但同时也支持正向代理方式的配置。

秋日芒草 ⋅ 今天 ⋅ 0

Spring 依赖注入(DI)

1、Setter方法注入: 通过设置方法注入依赖。这种方法既简单又常用。 类中定义set()方法: public class HelloWorldOutput{ HelloWorld helloWorld; public void setHelloWorld...

霍淇滨 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部