代码无误却出现URL Not Found?Flask项目404问题求助
排查Flask项目404错误的解决步骤
- 核对项目目录结构
Flask默认从templates文件夹读取模板文件,你的项目必须遵循以下结构:
你的项目文件夹/ ├── main.py └── templates/ └── index.html
不要把index.html直接放在项目根目录,必须放在templates子文件夹内,否则Flask无法找到模板,会引发路由匹配异常或返回404。
确认Python环境依赖
打开VSCode终端,激活你的虚拟环境(如果使用了),执行pip list检查Flask是否已安装。若未安装,运行pip install flask重新安装。环境依赖混乱可能导致路由无法正常加载。检查VSCode运行配置
点击左侧「运行和调试」按钮,查看.vscode/launch.json的启动配置,确保指向main.py:
{ "version": "0.2.0", "configurations": [ { "name": "Python: Flask", "type": "python", "request": "launch", "module": "flask", "env": { "FLASK_APP": "main.py", "FLASK_ENV": "development" }, "args": [ "run", "--debug" ], "jinja": true } ] }
若无此配置,点击「创建launch.json文件」选择Flask模板生成即可。
- 直接通过终端启动项目
跳过VSCode运行按钮,在项目根目录终端执行:
python main.py
或使用Flask命令:
flask run --debug
若此方式能正常访问,说明VSCode运行配置存在问题;若仍返回404,可尝试指定端口启动:
python main.py --port 5001
之后访问http://localhost:5001。
- 检查端口占用情况
Windows终端执行netstat -ano | findstr :5000,Mac/Linux执行lsof -i :5000,查看5000端口是否被其他程序占用。若被占用,关闭占用程序或更换端口启动Flask。
内容的提问来源于stack exchange,提问作者Chips
相关产品推荐
相关产品推荐

