启动mod_wsgi时出错

时间:2014-06-08 20:47:32

标签: python django apache python-3.x mod-wsgi

当我在mod_wsgi-experess上运行start-server命令时,我得到了这个输出:

Server URL      : http://localhost:8000/
Server Root     : /tmp/mod_wsgi-localhost:8000:0
Server Conf     : /tmp/mod_wsgi-localhost:8000:0/httpd.conf
Error Log       : /tmp/mod_wsgi-localhost:8000:0/error_log
httpd: Syntax error on line 2 of /tmp/mod_wsgi-localhost:8000:0/httpd.conf: module version_module is built-in and can't be loaded

它所引用的tmp文件夹中的httpd.conf中的第2行说明如下。它是由mod_wsgi自动创建的:

LoadModule version_module '/usr/local/apache/modules/mod_version.so'

我很难过。任何想法如何克服这个障碍?

1 个答案:

答案 0 :(得分:1)

我可以更改生成的配置的完成方式,但是您可以指出您正在使用的Apache版本的Linux发行版,或者您是否自己编译。您是否还可以在运行问题中提供输出:

httpd -M

将该命令中的“httpd”更改为Apache安装称为主Apache HTTP服务器可执行文件的任何内容(如果已更改)。

现在,生成的配置要求您使用的Apache安装是为所有Apache模块使用动态共享对象(DSO)而不是在特定模块中静态编译的。它还必须支持动态加载其他模块,例如mod_wsgi。

我没有考虑过人们会在模块中使用静态编译的Apache版本,因为对大量模块执行此操作会破坏通过仅加载所需内容来尝试缩减Apache内存大小的目的。

将来如果您对mod_wsgi有任何疑问,建议使用mod_wsgi邮件列表。对于看起来派生自mod_wsgi的实际错误/问题,请使用github mod_wsgi存储库中的问题跟踪器。 StackOverflow一般是一个讨论mod_wsgi问题的好地方,因为StackOverflow不是一个论坛,并且大量的mod_wsgi问题在得到答案之前就会被关闭,因为对mod_wsgi一无所知的自封式版主不能真正看到问题是什么如果他们确实知道这个话题,那么在许多情况下会有简单的答案,可能是提出并错误地将它们关闭为无效。


更新1

有关此问题的进一步更新已在ServerFault上完成。