如何使用mod_jk配置tomcat和apache的struts2?

时间:2013-09-30 19:54:43

标签: tomcat struts2 mod-jk

我已经能够使用Apache Web服务器接受使用mod_jk连接器的jsp请求,但是......在这种情况下是否可以配置Struts2应用程序?我该如何配置?

1 个答案:

答案 0 :(得分:1)

mod_jk用于代理从Apache HTTPD到Apache Tomcat的请求。由于Struts2应用程序只是一个Java应用程序,因此配置它与任何Java应用程序基本相同。

由于您未提供有关您尝试过的配置(如果有)或您正在尝试做什么的任何详细信息,我将仅提供我工作的生产应用程序的mod_jk配置的摘录。有关详细信息,请参阅mod_jk documentation

mod_jk.conf

此文件是mod_jk的核心配置。它位于conf.d目录中。

# Load mod_jk module
LoadModule    jk_module  /usr/lib64/httpd/modules/mod_jk.so

# Where to find workers.properties
# Update this path to match your conf directory location (put workers.properties next to httpd.conf)
JkWorkersFile /etc/httpd/conf/workers.properties

# Where to put jk shared memory
# Update this path to match your local state directory or logs directory
JkShmFile     /var/log/httpd/mod_jk.shm

# Where to put jk logs
# Update this path to match your logs directory location (put mod_jk.log next to     access_log)
JkLogFile     /var/log/httpd/mod_jk.log

# Set the jk log level [debug/error/info]
JkLogLevel    info

# Select the timestamp log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

workers.properties

此文件声明您要代理的所有worker(Tomcat实例)。此示例假定只有一个名为“tomcat。”的Tomcat实例。

# Define 1 real worker using ajp13
worker.list=tomcat

# Set properties for tomcat (ajp13)
worker.tomcat.type=ajp13
worker.tomcat.host=localhost
worker.tomcat.port=8009

Apache VirtualHost配置

将它放在Apache配置中,例如<VirtualHost >块内。名称“tomcat”是您在workers.properties中定义的任何名称。此示例将所有请求路由到Tomcat。

JkMount /* tomcat

其他

请记住在Tomcat server.xml中启用ajp13连接器。