启动Mac。从quickstart page获取基础Flask应用程序,并将端口更改为6000,从而为您提供以下内容:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.debug = True
app.run(port=6000)
将其保存在名为eg的文件中test.py
。然后创建virtualenv,运行pip install flask
,然后调用test.py
。以下是您将在终端上看到的内容:
* Running on http://0.0.0.0:6000/ (Press CTRL+C to quit)
* Restarting with stat
所以Flask声称已绑定到端口6000.现在启动浏览器并导航到localhost:6000
。我希望看到愚蠢的消息Hello World
,当我将port
参数遗漏给run
时,会导航到localhost:5000
。但这是我所看到的:
现在在终端上执行Ctrl-C
,并停止正在运行的进程。将端口更改为6001,重新运行该命令。 Hello World
回来了!怎么会这样?没有其他进程连接到端口6000; lsof -i | grep 6000
返回0结果,如果有任何进程,Flask将无法首先绑定到该端口。防火墙已关闭。
有什么想法吗?
答案 0 :(得分:4)
向@glyphobet致谢,他的评论导致了正确的答案。