在 Mac OS X 上将 mod_wsgi 安装到 apache2 中?

在 Mac OS X 上将 mod_wsgi 安装到 apache2 中?

我使用 Homebrew 来构建和安装 mod_wsgi:

$ brew install mod_wsgi
==> Downloading http://modwsgi.googlecode.com/files/mod_wsgi-3.2.tar.gz
######################################################################## 100.0%
==> ./configure --prefix=/usr/local/Cellar/mod_wsgi/3.2 --disable-debug --disabl
==> make install
==> Caveats
NOTE: "brew install -v mod_wsgi" will fail! You must install
in non-verbose mode for this to succeed. Patches to fix this
are welcome (and should be sent upstream too.)

* You must manually edit /etc/apache2/httpd.conf to load
  /usr/local/Cellar/mod_wsgi/3.2/libexec/mod_wsgi.so

* On 10.5, you must run Apache in 32-bit mode:
  http://code.google.com/p/modwsgi/wiki/InstallationOnMacOSX
==> Summary
/usr/local/Cellar/mod_wsgi/3.2: 3 files, 344K, built in 18 seconds
$ 

然后我在 /etc/apache2/httpd.conf 中添加了以下行:

LoadModule mod_wsgi_module /usr/local/Cellar/mod_wsgi/3.2/libexec/mod_wsgi.so

然后我重启了 Apache(使用sudo apachectl restart)。但当我加载时,我收到“无法连接到服务器”的提示http://本地主机/,我在 /private/var/log/apache2/error_log 中看到以下内容:

[Tue Jul 06 15:15:18 2010] [notice] caught SIGTERM, shutting down

如果我注释掉 LoadModule 行并重新启动 Apache,它就会恢复工作。

我该如何按照 brew 安装说明正确地“手动编辑 /etc/apache2/httpd.conf 以加载 /usr/local/Cellar/mod_wsgi/3.2/libexec/mod_wsgi.so”?

(我正在运行 Mac OS X 10.6.4。)

更新:我按照说明强制执行 32 位http://code.google.com/p/modwsgi/wiki/InstallationOnMacOSX,但仍然存在同样的问题。

答案1

跑步:

sudo apachectl -t

您将清楚地看到您的配置有错误。使用:

LoadModule wsgi_module /usr/local/Cellar/mod_wsgi/3.2/libexec/mod_wsgi.so

正如说明中所说的那样。即使用“wsgi_module”而不是“mod_wsgi_module”。请参阅:

http://code.google.com/p/modwsgi/wiki/QuickInstallationGuide#Loading_Module_Into_Apache

如果 HomeBrew 告诉您其他情况,那么他们的说明就是错误的。

相关内容