Windows下Nginx+Web.py+FastCGI服務搭建

Destino74發表於2014-10-01

在搭建之前,有必要了解下什麼是fastcgi,但鑑於我自己也不大瞭解,這裡就不搬門弄斧了,請參考各種百科和官網資料.

1.資源下載

python下載地址:戳這裡
webpy下載地址:戳這裡
flup下載地址:戳這裡
nginx下載地址:戳這裡

建議先把python裝好,然後裝setuptools,easy_install,接著用easy_install命令可以直接下載安裝web.py,flup.

nginx下載解壓即可用,不過需要稍微配置一下.

2.nginx配置

安裝完成測試下,開啟nginx.exe再訪問localhost顯示資料夾html下的index.html內容就沒什麼問題了.

conf下的nginx.conf是它的配置檔案,這東西引數好多,配置引數詳解候可以參考這篇文章,而且配置之前記得留備份啊

我們現在需要改的東西如下.

server {
listen       80;
server_name  localhost;

location / {
root   E:/pyweb/www/;  #這個指向web的根目錄
index  index.html index.htm;
include fastcgi_params;   #預設的fastcgi引數 設定
fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_pass 127.0.0.1:8008; #注意這個埠號
}
}

設定完後用命令列的方式

nginx –s stop 停止服務

nginx –t 測試配置檔案是否有錯誤

nginx 啟動服務

然後訪問localhost,會顯示pyweb/www/下的index.html(自己隨便寫個Hello World吧)

3.web.py

新建一個code.py檔案,其內容如下

import web

urls = (
    '/hello', 'index'
)

class index:
    def GET(self):
        return "Hello, world!"

if __name__ == "__main__":
    app = web.application(urls, globals())
    app.run()

然後命令列啟動它,像這樣python code.py 8008 fastcgi,這裡的8008即第二步配置檔案中設定埠號,如果不一致是無法正常訪問的.

現在訪問localhost/hello,看是不是返回了Hello, world?

相關文章