我试着在谷歌上搜索,唯一比较这两篇文章的是2005年到2002年。我刚刚设置了我的第一个Tomcat实例来为我正在做的项目运行Jira。我想通过端口80和apache代理这一点。据我所知,我可以使用mod_proxy轻松地转发流量。使用mod_jk有什么区别?这两个mods之间是否存在性能/安全性差异?有人有通过apache设置转发的任何技巧/经验吗?我在管理debian Lenny。
发布于 2009-10-11 05:41:43
除非您使用mod_proxy_http,否则JIRA不支持将tomcat放在apache后面。建议的配置如下所示
/etc/httpd/vhosts.d/jira.company.com.conf
...
ProxyPreserveHost On
<Location />
ProxyPass http://localhost:8080/
</Location>
.../opt/j2ee/domains/company.com/jira/tomcat/conf/server.xml
...
<Connector address="localhost" port="8080" URIEncoding="UTF-8"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
proxyName="jira.company.com" proxyPort="80"
disableUploadTimeout="true" />
...这应该会让您在http上运行,如果您想要一个https的例子,请告诉我
免责声明:虽然我不是JIRA团队的成员,但我目前是亚特兰群岛的雇员。
发布于 2009-10-11 08:00:55
这两种方法都将请求从apache转发到tomcat。mod_proxy使用我们都知道的爱的HTTP。mod_jk使用二进制协议AJP。mod_jk的主要优点是:
一个轻微的缺点是,AJP基于固定大小的块,并且可以使用长头(特别是具有长参数列表的请求URL )中断,但是您很少会有8K的URL参数。)这表明你做错了。*)
由于mod_proxy_ajp的存在,这个位置有点复杂。在它们之间,mod_jk是两者中比较成熟的,但是mod_proxy_ajp与其他mod_proxy模块在同一个框架中工作。我还没有使用mod_proxy_ajp,但将来会考虑这样做,因为mod_jk涉及到Apache之外的配置。
如果有选择的话,我更喜欢基于AJP的连接器,这主要是因为我的第二个优势,而不是性能方面。当然,如果亚特兰西安不支持mod_proxy_http以外的其他任何东西,这确实会在一定程度上束缚您的手,但是mod_jk确实与JIRA一起工作。
发布于 2009-10-11 03:20:26
是的有一些不同。但是,您选择使用的将取决于您的应用程序。
例如,mod_proxy将充当一个正常的反向代理,它将只在常规头之间转发常规头,而mod_jk将充当一个特殊的连接器,它不仅转发常规标头,而且转发某些其他环境变量。一个明喻可以画到SC吉和快速scgi连接器。
为了使用JSP,您应该使用它所设计的mod_jk。仅在转发到常规web服务器时仅使用mod_proxy (这可能会启动它们后面的其他ajp连接器)。
[front apache]---proxy---[back apache]---ajp---[tomcat]
|
+--------- ajp----[tomcat]希望这能有所帮助。
https://serverfault.com/questions/73314
复制相似问题