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

cPanel部署Django时Python版本识别错误 配置3.7.12识别为2.6.6

cPanel部署Django时Python版本识别为2.6.6的解决方案

核心原因是cPanel系统默认预装的Python 2.6.6路径优先级高于手动配置的3.7环境,加上Passenger(cPanel托管Python应用的默认服务)未指定正确解释器路径,导致所有调用默认走系统旧版本。按以下步骤排查修复即可:

  • 先获取Python 3.7的绝对路径
    SSH登录服务器后执行find / -name "python3.7" 2>/dev/null,如果是通过cPanel官方「Setup Python App」插件创建的虚拟环境,路径一般格式为/home/你的cPanel账号名/virtualenv/你创建的应用标识名/3.7/bin/python3.7;如果是手动编译安装的3.7.12,一般在/usr/local/bin/python3.7,把这个完整路径记下来,后续所有操作都用绝对路径,不要用python/python3这类相对命令。
  • 修正Passenger的wsgi入口配置
    打开项目根目录下的passenger_wsgi.py文件,在文件最顶部第一行加入解释器声明,前面不能有任何空行或者其他代码:
    #!/你刚才查到的python3.7完整绝对路径
    import os
    import sys
    # 原有wsgi配置保留不动,比如os.environ.setdefault("DJANGO_SETTINGS_MODULE", "你的项目名.settings") 这部分不要改
    
  • 修正.htaccess强制指定解释器
    打开域名根目录的.htaccess文件,加入一行配置:
    PassengerPython /你刚才查到的python3.7完整绝对路径
    

    不要尝试直接替换/usr/bin/python下的系统默认Python,cPanel自身的后台服务强依赖2.6.6版本,强行替换会直接导致面板崩溃。

  • 修正虚拟环境操作逻辑
    后续安装依赖、执行Django命令(比如migrate、collectstatic)时,不要直接敲pip/python,全部用虚拟环境下的对应绝对路径执行,比如装Django就执行:
    /home/你的cPanel账号名/virtualenv/你创建的应用标识名/3.7/bin/pip install django==适配3.7的版本
    
    执行migrate就执行:
    /home/你的cPanel账号名/virtualenv/你创建的应用标识名/3.7/bin/python manage.py migrate
    
  • 重启应用生效
    回到cPanel的「Setup Python App」页面,选中对应的Django应用,确认版本下拉选的是3.7.12,点击保存后一定要点「Restart」重启应用,光保存配置不会加载新内容。

验证方式:在项目目录下新建一个version_check.py,内容写import sys; print(sys.version),用刚才的绝对路径执行这个文件,输出3.7.12就是配置正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 11:03:16