在Windows系统上搭建Nginx+Python+MySQL环境的教程


Posted in Python onDecember 25, 2015

1 安装nginx
下载windows上的nginx最新版本,http://www.nginx.org/en/download.html。
解压后即可。
运行nginx.exe后本地打开http://localhost,将会看到欢迎页面,这证明nginx在本地运行良好,如果没有出现欢迎页面,请检查是否有进程占用了80端口。

2 安装flup
下载对应版本的flup,这里下载flup3.x版本,适合python3.2,下载地址:https://github.com/chxanders/flup3
解压(比如解压到D:\flup)
安装(进入到python的安装路径,然后执行下面的命令

>python setup.py install


!注意,如果提示缺少setuptools,安装distribute-0.6.49.tar.gz,安装方法和flup安装一样,下载地址:https://pypi.python.org/pypi/distribute/0.6.49

3 安装Mysql
在这里我使用的是5.1版本。在win系统上双击安装文件,下一步下一步完成。下载地址:http://dev.mysql.com/downloads/

4 安装数据库驱动
下载用于win上对应py版本的的python-mysql驱动,双击安装即可。下面的下载地址是3.2:

http://files.cnblogs.com/wangqc/distribute-0.6.49.zip

5 配置服务器
首先需要修改nginx的配置文件nginx.conf。
找到:

location / {
root html;
index index.html index.htm;
}

在里面加上:

# host and port to fastcgi server
fastcgi_pass 127.0.0.1:55880;
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;

然后测试该配置文件是否正确,在cmd中切换到nginx安装目录里,输入

nginx.exe -t

即可开始对配置文件测试,如果提示成功,说明配置正确,
这是可以结束掉任务管理器中所有的nginx.exe进程,重新运行ngin.exe重启nginx服务。

6 运行Server.py
在cmd下切换到项目目录,输入命令

python Server.py runfcgi method=threaded host=127.0.0.1 port=55880

注意,
这条命令只能用来启动项目,如果出现错误并不会给出提示。下面是正确的情况.

在Windows系统上搭建Nginx+Python+MySQL环境的教程

用浏览器打开http://127.0.0.1:8080 测试一下,项目是不是已经跑起来了(第一次运行等待的时间稍长,请耐心等待)。

7 一些注意事项
(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文件夹中的静态文件都不能加载!!!

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

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

Python 相关文章推荐
Python中对列表排序实例
Jan 04 Python
python数据结构之图深度优先和广度优先实例详解
Jul 08 Python
python rsa 加密解密
Mar 20 Python
Python基于PyGraphics包实现图片截取功能的方法
Dec 21 Python
DataFrame中去除指定列为空的行方法
Apr 08 Python
Python随机函数random()使用方法小结
Apr 29 Python
python使用tornado实现简单爬虫
Jul 28 Python
Python获取网段内ping通IP的方法
Jan 31 Python
Django 中间键和上下文处理器的使用
Mar 17 Python
pycharm运行程序时看不到任何结果显示的解决
Feb 21 Python
python3判断IP地址的方法
Mar 04 Python
python学习之panda数据分析核心支持库
May 07 Python
Windows系统下使用flup搭建Nginx和Python环境的方法
Dec 25 #Python
在Linux系统上通过uWSGI配置Nginx+Python环境的教程
Dec 25 #Python
Linux系统上Nginx+Python的web.py与Django框架环境
Dec 25 #Python
Linux下将Python的Django项目部署到Apache服务器
Dec 24 #Python
在Linux系统上部署Apache+Python+Django+MySQL环境
Dec 24 #Python
在Mac OS上使用mod_wsgi连接Python与Apache服务器
Dec 24 #Python
在Mac OS上搭建Python的开发环境
Dec 24 #Python
You might like
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
PHP设计模式(六)桥连模式Bridge实例详解【结构型】
2020/05/02 PHP
php7 参数、整形及字符串处理机制修改实例分析
2020/05/25 PHP
如何重写Laravel异常处理类详解
2020/12/20 PHP
学习ExtJS form布局
2009/10/08 Javascript
JavaScript日期时间与时间戳的转换函数分享
2015/01/31 Javascript
浅谈下拉菜单中的Option对象
2015/05/10 Javascript
JavaScript动态添加style节点的方法
2015/06/09 Javascript
JavaScript实现的类字典插入或更新方法实例
2015/07/10 Javascript
js基础之DOM中元素对象的属性方法详解
2016/10/28 Javascript
BootstrapTable请求数据时设置超时(timeout)的方法
2017/01/22 Javascript
footer定位页面底部(代码分享)
2017/03/07 Javascript
Angular.js自动化测试之protractor详解
2017/07/07 Javascript
JS中的两种数据类型及实现引用类型的深拷贝的方法
2018/08/12 Javascript
微信小程序picker组件两列关联使用方式
2020/10/27 Javascript
[03:04]DOTA2超级联赛专访ZSMJ “莫名其妙”的逆袭
2013/05/23 DOTA
[01:45]绝对公平!DOTA2队长征召模式详解
2014/04/25 DOTA
python 装饰器功能以及函数参数使用介绍
2012/01/27 Python
python抓取网页图片示例(python爬虫)
2014/04/27 Python
Python使用SocketServer模块编写基本服务器程序的教程
2016/07/12 Python
SQLite3中文编码 Python的实现
2017/01/11 Python
python初学之用户登录的实现过程(实例讲解)
2017/12/23 Python
Python 实现异步调用函数的示例讲解
2018/10/14 Python
Django对models里的objects的使用详解
2019/08/17 Python
如何利用pygame实现简单的五子棋游戏
2019/12/29 Python
Python turtle画图库&&画姓名实例
2020/01/19 Python
windows python3安装Jupyter Notebooks教程
2020/04/13 Python
美国最大的电子宠物训练产品制造商:PetSafe
2018/10/12 全球购物
PHP如何对用户密码进行加密
2014/07/31 面试题
C#如何判断当前用户是否输入某个域
2015/12/07 面试题
应届毕业生个人求职自荐信
2014/01/06 职场文书
党员评议思想汇报
2014/10/08 职场文书
专职安全员岗位职责
2015/04/11 职场文书
幼儿园新学期开学寄语
2015/05/27 职场文书
2015国庆节放假通知范文
2015/07/30 职场文书
党员干部学习心得体会
2016/01/23 职场文书