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

Ubuntu22.04下Apache+WSGI部署无法导入cv2/websockets模块求助

排查方向
  • 确认WSGI使用的Python解释器路径
    Apache的WSGI模块可能默认调用系统全局Python,而非你本地测试用的解释器。需检查虚拟主机配置cam.loc.conf中是否通过WSGIPythonHome或WSGIPythonPath指定了目标Python环境路径,示例配置如下:

    WSGIPythonHome /path/to/your/python/env
    WSGIPythonPath /var/www/Apache_with_Python/cam:/path/to/your/python/env/lib/python3.10/site-packages
    

    配置后重启Apache:sudo systemctl restart apache2

  • 核对模块安装路径与WSGI的Python路径匹配度
    本地执行which python3获取测试用解释器路径,再执行python3 -c "import cv2; print(cv2.__file__)"查看cv2的安装目录,对比WSGI所使用Python的site-packages目录是否一致。若使用虚拟环境,需确保WSGI配置指向该虚拟环境的Python。

  • 验证Apache进程的目录访问权限
    Apache默认以www-data用户运行,可能无权限访问你的Python模块安装目录。可执行以下命令调整权限:

    sudo chmod -R 755 /path/to/your/python/env/lib/python3.10/site-packages
    sudo chown -R www-data:www-data /path/to/your/python/env/lib/python3.10/site-packages
    
  • 检查WSGI脚本的shebang行
    若你的WSGI脚本开头有#!/usr/bin/env python3,需确认该路径指向能正常导入cv2的Python解释器,或直接写入绝对路径,例如#!/path/to/your/python/env/bin/python3。

  • 排查websockets模块的安装环境
    与cv2排查逻辑一致,执行/path/to/wsgi/python -m pip list查看WSGI所用Python环境的已安装模块,确认websockets存在。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 23:47:05