2010-10-28 73 views
0

我有以下設置 - 並且在瀏覽器中訪問服務器時不會收到任何響應。如果我有一個運行fcgi的服務器並用瀏覽器訪問它,會發生什麼情況?

我應該期待一些嗎?這裏是測試設置,使用python & flup。

#test.py

def myapp(environ, start_response): 
    start_response('200 OK', [('Content-Type', 'text/plain')]) 
    return ['abc\n'] 

import os 
os.environ['FCGI_WEB_SERVER_ADDRS']="127.0.0.1:8000" 
from flup.server.fcgi import WSGIServer 
WSGIServer(myapp, bindAddress=('127.0.0.1',8000)).run() 

python test.py 

lynx http://127.0.0.1:8000 

unexpected network read error; connection aborted 

如果我註釋掉OS的東西,並重新啓動服務器:

lynx http://127.0.0.1:8000 

HTTP request sent; waiting for response. 

和從來都沒有返回。

回答

2

您的FCGI服務器不會說HTTP。您需要一個可以說FCGI的HTTP代理。你可以運行像nginx這樣的可以說HTTP並可以通過FCGI的東西。

http://wiki.nginx.org/NginxFcgiExample

+0

謝謝。讓我感覺到的事情是,即使你遠程登錄到它,它也不會返回任何東西。 – fastmultiplication 2010-10-31 07:02:28

0

您可以通過telnet連接到FCGI服務器,但(至少在Windows上)你不會看到任何東西,因爲服務器期望你先發送一些二進制消息。 因此,在輸入幾個字符後,服務器將斷開連接。 如果telnet完全沒有連接,這可能意味着防火牆或地址:端口綁定問題(即您要連接的地址比服務器綁定的地址錯誤)。

相關問題