我想在另一臺計算機上訪問我的CherryPy站點,但我嘗試了答案表單here和here,但都沒有工作。我在OSX El Capitan,Python 3.5.2上使用Mac,我相信CherryPy的最新版本。這是我目前的代碼,我不在乎地址是什麼,只是它的工作原理。謝謝你的幫助!Python 3(CherryPy)服務器不能在其他計算機上工作
import cherrypy
class HelloWorld(object):
def index(self):
return "Hello World!"
index.exposed = True
# bind to all IPv4 interfaces
cherrypy.config.update({'server.socket_host': '0.0.0.0'})
cherrypy.quickstart(HelloWorld())
編輯:
我可以從localhost:8080
127.0.0.1
和0.0.0.0
訪問該網站。控制檯輸出是這樣的:
[26/Jul/2016:19:10:26] ENGINE Listening for SIGTERM.
[26/Jul/2016:19:10:26] ENGINE Listening for SIGHUP.
[26/Jul/2016:19:10:26] ENGINE Listening for SIGUSR1.
[26/Jul/2016:19:10:27] ENGINE Bus STARTING
Warning (from warnings module):
File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/cherrypy/_cpchecker.py", line 105
warnings.warn(msg)
UserWarning: The Application mounted at '' has an empty config.
[26/Jul/2016:19:10:27] ENGINE Started monitor thread '_TimeoutMonitor'.
[26/Jul/2016:19:10:27] ENGINE Started monitor thread 'Autoreloader'.
[26/Jul/2016:19:10:27] ENGINE Serving on http://0.0.0.0:8080
[26/Jul/2016:19:10:27] ENGINE Bus STARTED
我運行我的文件使用空閒,我沒有使用防火牆。
1)它是否可從本地主機? 2)它真的綁定到某個TCP端口嗎?什麼是控制檯輸出? 3)你有沒有爲Mac設置防火牆? 4)你如何嘗試訪問應用程序? – webKnjaZ
你已經提到了所有你嘗試過的,除了其他計算機的IP地址 –
@webKnjaZ我試圖編輯我的問題來解決你的問題。我不確定TCP端口是什麼,或者如果綁定到一個端口,你能解釋一下嗎? – nedla2004