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

Azure Web App Linux上Gunicorn Worker启动失败:ModuleNotFoundError

解决Azure Web App Linux上Gunicorn启动Django应用报ModuleNotFoundError的问题

针对你遇到的ModuleNotFoundError: No module named 'validator'错误,以下是具体的排查和解决思路:

  • 检查Python路径配置
    Azure Web App Linux默认工作目录为/site/wwwroot,你的validator应用位于/site/wwwroot/csvvalidator目录下,Python可能无法自动识别这个路径。可以在Gunicorn启动命令前添加Python路径设置:

    export PYTHONPATH=/site/wwwroot/csvvalidator && gunicorn csvvalidator.wsgi:application
    

    或者确保启动命令在项目根目录(含manage.py的目录)执行:

    cd /site/wwwroot/csvvalidator && gunicorn csvvalidator.wsgi:application
    
  • 验证Gunicorn启动命令的正确性
    确认启动命令指向正确的WSGI模块。正确的命令格式应为:

    gunicorn [选项] 项目名称.wsgi:application
    

    你的项目名称是csvvalidator,所以命令里必须是csvvalidator.wsgi:application,不要误写成validator.wsgi。

  • 确认依赖与虚拟环境配置
    检查部署过程中是否完整安装了所有依赖:

    1. 确保requirements.txt包含Django及项目所需的所有包;
    2. 确认部署脚本(如GitHub Actions、Azure DevOps Pipeline)正确激活虚拟环境并执行了pip install -r requirements.txt;
    3. 通过Azure SSH登录服务器,进入项目目录,激活虚拟环境后运行pip list,验证Django是否已安装。
  • 检查validator应用的模块结构
    确保validator目录下的__init__.py文件存在且未被损坏。如果这个文件缺失或内容异常,Python会将该目录视为普通文件夹而非可导入模块。同时确认部署后该目录下的所有文件(如models.py、views.py等)都已完整上传到服务器。

  • 核对settings.py中的应用配置
    再次确认INSTALLED_APPS中添加的是准确的'validator',无拼写错误、大小写问题或多余空格。例如:

    INSTALLED_APPS = [
        ...
        'validator',
        ...
    ]
    
  • 本地模拟服务器环境排查
    通过Azure SSH功能登录Web App服务器,进入项目根目录,执行以下命令测试:

    python manage.py check
    

    如果该命令同样报validator模块找不到,说明问题出在服务器的Python环境或路径配置上,可进一步通过echo $PYTHONPATH查看当前Python路径,确认项目根目录是否在路径中。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 09:25:15