2010-12-09 66 views
0
之間切換

我目前正在朝着我所有的Python CGI腳本到WSGI標準使用Flup(http://trac.saddi.com/flup),我創建了一個dispatch.fcgi文件調用和使用Flup如文檔中描述:FCGI和CGI Python和Flup

from flup.server.fcgi import WSGIServer 
... 

並且像魅力一樣工作,當我嘗試切換到CGI以在非緩存模式下調試某些內容時,出現問題,避免終止進程或觸摸文件,這應該與替換Flup服務器以導入:

from flup.server.cgi import WSGIServer 
... 

但是然後瀏覽器ret給我一個500錯誤,我檢查了通過SSH執行的頭文件和html,似乎沒問題,然後我想應該是一些服務器配置錯誤(Dreamhost共享),並且我發現服務器無法使用.fcgi擴展名執行Python腳本,所以我找到了一個解決辦法增加這.htaccess文件:

AddHandler cgi-script .fcgi 

那麼CGI模式幾乎工程(wsgi.input總是空的,甚至讀它在一個正確的方式傳遞長度),但FCGI緩存不工作起來,開始了很多過程。在這一刻,我完全陷入僵局,我只想從FCGI切換到CGI,這種方法是否有效?或者我錯過了什麼?

非常感謝。

回答

1

FCGI協議與CGI不同。這就是爲什麼從FCGI到CGI的簡單更改不起作用,並且在將Apache .fcgi文件處理程序更改爲CGI處理程序時,FCGI不起作用。

+0

我知道有不同的協議,但在WSGI下都應該以相同的方式工作,至少我明白這是WSGI的基本原理,統一所有協議在同一個包裝下。如果Flup無法處理CGI,爲什麼Flup的CGI模塊?有很多人以這種方式使用它... – mkotechno 2010-12-10 05:43:31