Apache作为Tomcat的前端,在Mavericks Mac上使用mod_proxy_ajp代理

时间:2014-08-07 10:03:47

标签: apache tomcat osx-mavericks

我想在一台新的Mac服务器上使用Apache加载Tomcat,但我错过了一些小步骤。目前两台服务器都在运行,但端口8009未正确代理。 80和8080正在运作。

我读到Mac / Apache安装了mod_proxy_ajp,也应该可以运行了。 (例如弗拉基米尔How to install mod_jk on Mac OS X提及)

有人可以从头开始逐步指导我在新服务器上,因为互联网和文档上的所有指南都没有带来成功。 (很抱歉,但是在经过一周的夜间试验(错误)之后我就陷入困境。我真的很疯狂。我也很感激文件夹路径,因为文件有时位于多个位置)

提前致谢!

此致 尼古拉斯

2 个答案:

答案 0 :(得分:1)

很抱歉延迟,我不允许在8小时内(缺少积分)回答我自己的问题,但是的,我得到了它的工作!小牛Mac OSX服务器真的很容易设置和使用将Apache作为Tomcat的前端。 (如果你知道如何......)

现在我已经集成了tomcat,因此带有url:localhost的php由Apache和jsp url管理:localhost / examples - >运行tomcat但没有显示端口,它看起来是集成的。

我是怎么做到的?

1)如果需要位于opt / apache-tomcat-8.0.9 / conf中的tomcat的server.xml中的行,则取消注释:

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

重启tomcat服务器

2)编辑位于以下位置的Apache配置文件:/Library/Server/Web/Config/apache2/httpd_server_app.conf

这个奇怪的名称和位置是由Mac Server.app引起的,是导致大多数问题的原因,因为我没有意识到他们将httpd.conf文件重命名并复制到第二个位置!我一直在更改错误的配置文件...

我在短信处TextMate中添加了这个文本(该程序可以显示隐藏文件,并在更改文件时请求adminpass)

Mac.Server中的默认网页位于Document Root

下面
<VirtualHost *:80> 
   ServerName localhost 
   DocumentRoot "/Library/Server/Web/Data/Sites/Default"

   <Proxy *> 
    AddDefaultCharset Off 
    Order deny,allow 
    Allow from localhost 
   </Proxy> 
   ProxyPass /examples ajp://localhost:8009/examples/ 
   ProxyPassReverse /examples ajp://localhost:8009/examples/ 
</VirtualHost>

答案 1 :(得分:0)

请确保在Apache中启用mod_proxy_ajp模块。

LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

完成后,将虚拟主机中的代码放在相应的主机详细信息下面。

ProxyPreserveHost On
ProxyPass           /   ajp://localhost:8009/
ProxyPassReverse    /   ajp://localhost:8009/