我正在寻找在Mac OS X 10.7 Lion或更高版本上正确安装mod_jk的方法。目标是在Apache HTTPD后面测试Tomcat。
到目前为止,我发现唯一的安装方式是下载源代码,然后在控制台中进行配置,执行make和make install命令。
这并不非常实用,因为我需要自己管理mod_jk的安装和配置。例如,在需要时可能会忘记删除mod_jk。无论如何,我认为应该有更加友好的方式来安装mod_jk,比如某种DMG包。
我还发现mod_jk可在OS X Server上使用。实际上它已经在我的开发机器上安装了,但只适用于服务器。
<IfDefine MACOSXSERVER>
...
#LoadModule jk_module libexec/apache2/mod_jk.so
...
</IfDefine MACOSXSERVER>
也许有一个mod_jk的软件包可供开发人员使用,他们不需要安装OS X服务器或其他方式。
更新
- mod_proxy_ajp是一种替代方案。主要优点:它与Apache和Mac OS X捆绑在一起。
- 我现在在我的配置中测试了mod_proxy_ajp,可以说它甚至更好-因为不需要额外的配置。 mod_proxy_ajp可以在Mac上直接使用,也可能在linux服务器上使用,你也不需要使用额外的workers.properties文件。
这是我的配置示例:
<VirtualHost *:80>
ServerAdmin me@me.com
DocumentRoot "/Users/me/Sites/projekt"
ServerName projekt.local
<Directory "/Users/me/Sites/projekt">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<Proxy *>
AddDefaultCharset Off
Order deny,allow
Allow from all
</Proxy>
ProxyPass /coolapp ajp://localhost:8009/coolapp
ProxyPassReverse /coolapp ajp://localhost:8009/coolapp
ErrorLog "/private/var/log/apache2/projekt.local-error_log"
CustomLog "/private/var/log/apache2/projekt.local-access_log" common
</VirtualHost>
以上配置了AJP连接器的Tomcat就是你所需要的,太棒了!
参考:
- 在OS X上安装mod_jk - http://www.bartbusschots.ie/blog/?p=1347
- 比较mod_jk和mod_proxy_ajp apache到tomcat: mod_jk vs mod_proxy
- 如何配置mod_proxy_ajp与Tomcat?
请给出建议。
<VirtualHost *:80>
开头的部分是放在httpd.conf
中还是其他地方? - murray/coolapp
" 指的是什么。它与DocumentRoot
设置有什么关系? - murrayLoadModule
行的语法是什么,它用于httpd.conf
中的mod_proxy_ajp
?也就是说,在LoadModule xxx modules/mod_proxy_ajp.so
中的 "xxx
" 是什么? - murrayLoadModule
语法的问题,似乎可行的是:LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
。 - murrayLoadModule proxy_ajp_module modules/mod_proxy_ajp.so
。 - murray