【问题标题】:mod_wsgi not found for apache/windows未找到 apache/windows 的 mod_wsgi
【发布时间】:2011-05-22 22:22:34
【问题描述】:

我无法强制我的 Apache 2.2 加载 mod_wsgi 模块。

当我从 httpd.conf 中删除以下行时,它会正确启动:

`LoadModule wsgi_module modules/mod_wsgi.so`

尝试启动 apache 时出现此错误。

`httpd.exe: Syntax error on line 129 of D:/Apache2.2/conf/httpd.conf: Cannot load D:/Apache2.2/modules/mod_wsgi.so into server: The specified module could not be found. `

环境:
- Apache 2.2.16 x86 VC9(来自 ApacheLounge.com)
- Python 2.7.1 AMD64(为所有用户安装)
- 将 Python 路径添加到系统路径
- Python 与 CGI 一起正常工作

我查了很多资料,都没有帮助。

有人有什么想法吗?

【问题讨论】:

    标签: windows django apache mod-wsgi


    【解决方案1】:

    到目前为止,仅确认对此问题的解释,除了文件实际上不存在或命名错误的明显情况之外,所使用的 Python 版本并未为所有用户安装,而只是为您自己安装。

    因为 Apache 作为特殊服务用户运行,如果为自己安装了 Python,该服务用户可能无法找到它。无论出于何种原因,错误提示找不到 mod_wsgi.so 文件,即使真正的问题是 Python 安装中的某些文件(可能是 Python 的 DLL)找不到。

    建议你卸载 Python 然后重新安装,确保为所有用户安装。

    【讨论】:

    • 我发现重新安装 Python 修复了它 - 奇怪的是它之前一直工作正常,但重启后它停止了,我根本没有升级 Python...
    【解决方案2】:

    上次我使用 Windows 时,他们有 dll 文件。所以至少应该是LoadModule wsgi_module modules/mod_wsgi.dll

    您的安装中有 dll 文件吗?

    【讨论】:

    • 据我所知,我只有 .so 文件。其他模块加载正确。
    • 你是对的。您的 mod_wsgi.so 文件是否在 apache 模块目录中?我的 Windows 经验有限,但在 linux 上,如果您在 32 位 Apache 上有 64 位 .so 文件,则会出现类似的错误,反之亦然。
    • 是的,权限也可以。文件名也是。
    猜你喜欢
    • 2019-05-19
    • 1970-01-01
    • 2018-12-21
    • 2020-05-05
    • 2014-05-10
    • 2011-04-05
    • 1970-01-01
    • 2021-01-12
    相关资源
    最近更新 更多