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的安裝路徑,然后執行下面的命令
1
|
>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。
找到:
1
2
3
4
|
location / { root html; index index.html index.htm; } |
在里面加上:
1
2
3
4
5
6
7
8
9
10
11
12
|
# 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安裝目錄里,輸入
1
|
nginx.exe -t |
即可開始對配置文件測試,如果提示成功,說明配置正確,
這是可以結束掉任務管理器中所有的nginx.exe進程,重新運行ngin.exe重啟nginx服務。
6 運行Server.py
在cmd下切換到項目目錄,輸入命令
1
|
python Server.py runfcgi method=threaded host=127.0.0.1 port=55880 |
注意,
這條命令只能用來啟動項目,如果出現錯誤并不會給出提示。下面是正確的情況.
用瀏覽器打開http://127.0.0.1:8080 測試一下,項目是不是已經跑起來了(第一次運行等待的時間稍長,請耐心等待)。
7 一些注意事項
(1)、首先應該改的地方,這個大家應該都知道:
1
|
DEBUG = TEMPLATE_DEBUG = False#將debug設置為False |
(2)、改一下ALLOWED_HOSTS,我死死的就將這個給忘了,我的配置:
1
2
3
4
|
if DEBUG:#根據DEBUG來確定 ALLOWED_HOSTS = [""] else: ALLOWED_HOSTS = ["localhost","127.0.0.1"] |
(3)、重頭戲來了,配置nginx:
這里相關的代碼網上很多,但是幾乎都沒有說明一件事:
配置location ~ ^/static/ 的位置,一定要在location ~ ^/的前面,而且不能單純的使用 location /static/ 或者location /static ,不然,static文件夾中的靜態文件都不能加載!!!
ps:提起這個,慢慢的淚啊,就錯在這里了。。。。。
嫌麻煩可以寫成批處理,運行的時候雙擊一下就好了。