在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的Django框架中的表单处理示例
Jul 17 Python
Python工程师面试题 与Python Web相关
Jan 14 Python
python中map()与zip()操作方法
Feb 27 Python
python使用jieba实现中文分词去停用词方法示例
Mar 11 Python
python中matplotlib的颜色及线条控制的示例
Mar 16 Python
python3 selenium自动化测试 强大的CSS定位方法
Aug 23 Python
使用Python的turtle模块画国旗
Sep 24 Python
matplotlib.pyplot画图并导出保存的实例
Dec 07 Python
python编写微信公众号首图思路详解
Dec 13 Python
wxPython修改文本框颜色过程解析
Feb 14 Python
使用pygame编写Flappy bird小游戏
Mar 14 Python
Python中使用filter过滤列表的一个小技巧分享
May 02 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
php学习笔记 php中面向对象三大特性之一[封装性]的应用
2011/06/13 PHP
PHP header()函数使用详细(301、404等错误设置)
2013/04/17 PHP
PHP封装分页函数实现文本分页和数字分页
2014/10/23 PHP
Symfony2之session与cookie用法小结
2016/03/18 PHP
PHP5.2中PDO的简单使用方法
2016/03/25 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
2017/08/28 PHP
JavaScript delete操作符应用实例
2009/01/13 Javascript
JavaScript null和undefined区别分析
2009/10/14 Javascript
浅析JavaScript中两种类型的全局对象/函数
2013/12/05 Javascript
用js将内容复制到剪贴板兼容浏览器
2014/03/18 Javascript
使用jQuery将多条数据插入模态框的实现代码
2014/10/08 Javascript
jQuery中hasClass()方法用法实例
2015/01/06 Javascript
javascript设置页面背景色及背景图片的方法
2015/12/29 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
2017/01/13 Javascript
详解通过JSON数据使用VUE.JS
2017/05/26 Javascript
vue实现全选和反选功能
2017/08/31 Javascript
微信小程序picker组件下拉框选择input输入框的实例
2017/09/20 Javascript
Vue-cli 使用json server在本地模拟请求数据的示例代码
2017/11/02 Javascript
解决element UI 自定义传参的问题
2018/08/22 Javascript
element-ui 关于获取select 的label值方法
2018/08/24 Javascript
Nuxt 嵌套路由nuxt-child组件用法(父子页面组件的传值)
2020/11/05 Javascript
Python对象体系深入分析
2014/10/28 Python
利用Python脚本生成sitemap.xml的实现方法
2017/01/31 Python
基于ID3决策树算法的实现(Python版)
2017/05/31 Python
ubuntu安装sublime3并配置python3环境的方法
2018/03/15 Python
Python2手动安装更新pip过程实例解析
2020/07/16 Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
2020/12/14 Python
五款漂亮的纯CSS3动画按钮的实例教程
2014/11/21 HTML / CSS
介绍一下MD5加密算法
2016/11/12 面试题
西式婚礼证婚词
2014/01/12 职场文书
孝敬父母的演讲稿
2014/05/14 职场文书
初婚初育证明范本
2014/11/24 职场文书
售后服务质量承诺书
2015/04/29 职场文书
Java图书管理系统,课程设计必用(源码+文档)
2021/06/30 Java/Android
世界无敌的ICOM IC-R9500宽频接收机
2022/03/25 无线电
python运行脚本文件的三种方法实例
2022/06/25 Python