Ale*_*lex 13 port localhost cherrypy
当我运行CherryPy Hello World时:
import cherrypy
class HelloWorld:
def index(self):
return "Hello world!"
index.exposed = True
cherrypy.config.update({'server.socket_port': 8080,})
cherrypy.quickstart(HelloWorld())
Run Code Online (Sandbox Code Playgroud)
...我明白了:IOError:端口8080没有绑定'localhost'.会是什么呢?
Bra*_*des 10
如果你试图在Heroku上部署CherryPy,你不能使用环回来检查你是否真的打开了一个端口,那么你需要简单地禁用CherryPy的wait_for_occupied_port()功能,以便CherryPy的自我一致性检查不会确定它有,实际上, 未能启动.以下是我用来修复CherryPy的三行,以便它在Heroku上运行:
from cherrypy.process import servers
def fake_wait_for_occupied_port(host, port): return
servers.wait_for_occupied_port = fake_wait_for_occupied_port
Run Code Online (Sandbox Code Playgroud)
你可能还有别的东西正在监听那个端口.
在Linux上做:
netstat -pnl | grep 8080
Run Code Online (Sandbox Code Playgroud)
并看看8080正在监听什么过程
在Windows上使用TCPView之类的东西来做同样的事情.