2011-02-25 63 views
0

我想創建一個更像網絡應用程序的網站。將有兩部分:前端(可能在PHP,Apache)和後端服務(在Python中,使用Twisted) 前端通常會提供一些JavaScript,用於向Python服務發送Ajax請求,以及接收數據。我應該將我的服務設置爲聽哪個端口?

因爲Apache將在80端口監聽,Python的服務應該聽聽其他端口。
所以我的問題是:Python服務應該聽什麼端口?我在問,因爲恐怕它可能會被代理,防火牆等阻止,這些代理和防火牆在客戶的方式上並不那麼罕見。

什麼是最標準,沒有問題的方式來做到這一點?

+2

最標準的方法是使用mod_wsgi並讓apache處理所有這些。 – geoffspear

+0

mod_wsgi和mod_php會同時工作嗎? Apache將如何區分哪些請求應該發送到php以及哪些應該發送給wsgi? – Alexandros

回答

3

正常的選擇是http-alt(8080)。

1

你可以被封鎖,無處不在。任何不常見的端口都可能被嚴重的防火牆配置阻止。要麼獲得一個專用的IP地址,並聽取端口80.最好與您的IT網絡人員交談。

1

如果你打算爲這是分佈式的,你必須使用上面1024的端口,否則使用它的Unix類系統上會有人們root權限運行它,打開非常大的罐頭就安全而言,蠕蟲是令人關切的。

1

如果你的意思是自己沒有問題,就像8080一個單獨的端口將是適當的。

如果你的意思是你的用戶沒有問題,端口80(HTTP)和443(HTTPS)是有意義的,因爲他們是最有可能被防火牆擋住了唯一的選擇。當然,這意味着您的應用程序和Web服務將共享一個端口,所以您必須在Apache後面運行您的Python代碼或者其他任何服務於您的PHP代碼和靜態文件的代碼。你嫁給Twisted嗎?爲什麼不使用許多WSGI兼容的Web框架之一構建Python Web服務,並使用mod_wsgi將其插入Apache?

+0

我結婚了嗎?遠離它:)我現在只處於探索階段。我需要一種快速的方法來製作一個非無狀態的python web應用程序,Twisted似乎符合這個要求。我可能會嘗試一種不同的方法,並且我願意接受所有stackoverflowrs的寶貴見解 – Alexandros

相關問題