You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OVH部署Flask项目报错ImportError: No module named 'flask'如何解决

报错根因分析
  • 初始报错的核心原因:OVH默认使用的Passenger进程加载的是系统全局Python 3.5环境,你本地创建的my_py3_env虚拟环境没有被激活,全局环境中未安装Flask依赖,因此触发导包失败。
  • 新增配置后仍然报错的原因是你的.platform.app.yaml存在两处核心配置错误:
    1. 依赖文件名不匹配:你本地的依赖清单命名为requirement.txt,但构建钩子中写的是pip install -r requirements.txt(多了后缀s),构建流程根本没有读取到你的依赖清单,自然没有安装Flask。
    2. 启动命令指向的WSGI入口不存在:你配置的启动命令是gunicorn -b $PORT project.wsgi:application,但你的项目中既没有project目录,也没有wsgi.py文件,无法找到对应应用实例。
修复方案
  1. 统一依赖文件名:要么将你本地的requirement.txt重命名为requirements.txt,要么将构建钩子中的命令修改为pip install -r requirement.txt,保证两边命名一致。
  2. 在app.py同级目录新增wsgi.py文件,内容如下:
from app import app

if __name__ == "__main__":
    app.run()
  1. 修正.platform.app.yaml中的启动命令,替换为:
start: "gunicorn -b $PORT wsgi:app"
  1. (可选)如果你要继续使用本地的my_py3_env虚拟环境,可以在启动命令中指定虚拟环境的Python解释器路径,无需手动激活。
  2. 补充修复模板不匹配问题:你当前代码中写的是render_template('test.html'),但templates目录下只有index.html,建议两边统一命名,避免后续出现模板找不到的报错。
  3. 如果你使用Passenger模式部署,可额外在项目根目录新增passenger_wsgi.py文件,内容和上述wsgi.py一致即可。

内容的提问来源于stack exchange,提问作者Guliup

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 20:54:00