Flask项目终端运行正常 但PyCharm运行后访问报404如何解决?
问题根因
你遇到的404报错和PyCharm配置无关,是代码执行顺序导致的:
- 终端执行
flask run命令时,Flask会先完整导入app.py整个模块,加载完全部路由规则后才启动服务,因此即使路由定义写在app.run()之后也能正常生效 - 在PyCharm中直接运行
app.py文件时,代码会按从上到下的顺序执行,进入if __name__ == "__main__"分支后会直接执行app.run()启动服务,这一步会阻塞程序向下执行,写在后面的@app.route("/")路由规则永远不会被注册,访问根路径自然返回404
解决方法
调整代码顺序,把所有路由定义放到app.run()之前即可,修正后的代码如下:
from flask import Flask app = Flask(__name__) @app.route("/") def hello_world(): return "<p>Hello, World!</p>" if __name__ == "__main__": app.run(port=5000)
修改完成后重启PyCharm中的运行任务,即可正常访问站点。
内容的提问来源于stack exchange,提问作者appfrosch
相关产品推荐
相关产品推荐

