2012-07-25 94 views
2

我需要在我的JBoss前面运行Apache httpd,这样我就可以离开JBoss端口(8080/8443),但Apache/80转发到Jboss/8080, Apache/443转发到Jboss/8443。 我有HTTP转发工作,但我无法使HTTPS转发工作。 要获得HTTP代理工作,我只是加载了正确的代理模块:从Apache httpd 443到JBoss 8443的端口转发

LoadModule proxy_module modules/mod_proxy.so 

LoadModule proxy_ajp_module modules/mod_proxy_ajp.so 

然后添加这些新的指令:

ProxyPass/ajp://localhost:8009/ 

ProxyPassReverse/ajp://localhost:8009/ 

如果所有我想要做的就是转发端口443到8443到我必须启用SSL?我不需要Apache来加载和处理证书。

+0

投票移动到ServerFault。 – Bruno 2012-07-25 18:55:32

回答

3

你混淆了两件事。

如果你想端口转发从端口443到8443,不要通过Apache Httpd,只是转发端口(例如,通过iptables)。在这种情况下,您的JBoss容器必须配置为处理SSL/TLS连接(所有证书设置)。

如果从Apache的httpd(监听端口443)到JBoss容器想反向代理,你不需要到JBoss容器(尤其是在本地主机上),只是代理请求上启用SSL/TLS到纯HTTP(或通过AJP)的Apache Httpd。为此,您需要配置Apache Httpd来处理SSL/TLS连接。

+0

布鲁诺,mod_proxy_http真的是一个比AJP更好的反向代理解决方案吗?你能详细说明吗? – EJP 2012-07-26 02:33:13

+0

@EJP,我认为我已经阅读了Apache ML,其中有些人认为AJP已被废弃(即使通过'mod_proxy'),但这可能只是一个比其他任何内容更容易被引入讨论的想法。我已经从我的答案中删除了这个,没有意见开始一个传言... – Bruno 2012-07-26 13:52:22

+0

我想你在考虑mod_jk,这是AJP实现之一,并且由于某种原因不是Apache HTTP distrib的一部分:I认为它可能起源于Tomcat项目,然后被分离出来。仍然有mod_proxy_ajp这是英里更容易配置和完美地为我工作。我喜欢AJP,因为我可以从Tomcat完全删除HTTP连接器,并且可以更容易地调解所有访问,以说明Tomcat Manager应用程序。据说它也更快,但我无法评论。 – EJP 2012-07-26 14:24:20