安装了 Apache、Tomcat 和 mod_jk。Worker.properties 部分:
worker.ajp13_worker.port=8009
worker.ajp13_worker.host=localhost
worker.ajp13_worker.type=ajp13
Apache 监听 80 端口。 jk.conf 的一部分:
JkMount /tui/* ajp13_worker
JkMount /tui ajp13_worker
Tomcat 正在监听 8009。Server.xml 部分:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
该应用程序位于/opt/tomcat/webapps/tui/
. 它有 index.html 和一个 servlet。servlet 很好,可以通过localhost:8080/tui/servlet
. index.html 也是通过localhost:8080/tui
. 但是,这是对 Tomcat 的直接调用(不是吗?)。如果你尝试访问 80 端口,那么 Apache 指的是错误的地方。也就是说,可能 Apache 没有与 Tomcat 连接。我究竟做错了什么?
PS 我的任务是让 Apache 处理静态数据,让 tomcat 处理 servlet 和 JSP。
事实证明,问题不止一个。
首先,在
worker.properties
集合workers.java_home
和workers.tomcat_home
非默认值中。其次,有必要
JkMount
在指令中注册<VirtualHost>
:第三
Require all granted
,如上所示/usr/share
(/var/www
第四,(理论上没有必要),我
<VirtualHost>
不是写在jk.conf中,而是在/etc/apache2/sites-available/
.PS如果您按照步骤4进行操作,则需要添加
/etc/hosts
以下内容: