如何从Apache重定向到Tomcat?

时间:2009-03-02 20:02:28

标签: apache url tomcat ports

我正在开发我的第一个Java站点。我在端口8080上运行Apache Tomcat,在端口80上运行Apache HTTPD。我可以访问该站点的当前URL是(例如)123.4.5.6:8080。在将域指向新IP之前,我想从URL中删除端口号。

目前我只使用Apache作为phpmyadmin,但是一旦我找到mod_jk等,我计划将它用于CGI脚本和其他东西......所以我不想将Tomcat的端口更改为80并关闭Apache。

我希望这是有道理的。

5 个答案:

答案 0 :(得分:41)

正确的做法是让Apache保持在80,Tomcat保持在8080,并使用插件(最好是mod_proxy)从Apache代理Tomcat。 mod_proxy只需要10分钟即可完成设置。

how-to非常容易理解。

答案 1 :(得分:17)

正如您已经提到的,通常的方法是使用Apache HTTPD中的mod_jk来转发您希望由Tomcat处理的内容。

tomcat.apache.org上有一个Quick HowTo。您需要执行以下操作:

  • mod_jk.so复制到Apache HTTPD的相应模块目录中。
  • 创建配置文件workers.properties
  • 在Apache HTTPD的httpd.conf中,添加一个部分以配置mod_jk
  • 确保将Tomcat配置为接受mod_jk协议,该协议通常位于端口8009上。

httpd.confJkMount的行:

JkMount  /examples/* worker1

告诉Apache HTTPD将哪些请求转发给Tomcat。

答案 2 :(得分:2)

上述两个有用的答案都很好,但我更喜欢mod_proxy而不是mod_jk。对于mod_proxy,没有额外的安装要做,与mod_jk不同,设置更容易。 mod_jk使您可以更好地控制Tomcat参数的详细调整,但如果您只想从Apache到Tomcat的简单重定向,mod_proxy就可以了。

答案 3 :(得分:1)

如果您希望Apache而不是Tomcat提供静态内容,您应该使用mod_jk:http://tomcat.apache.org/tomcat-6.0-doc/proxy-howto.html

那么SSL呢?如果我们希望Apache处理HTTPS,因为它比java / Tomcat更快?

答案 4 :(得分:0)

您应该使用此链接配置您的tomcat。对于tomcat 7 http://tomcat.apache.org/tomcat-7.0-doc/proxy-howto.html