我正在尝试使用 AJP
配置 Apache
网络服务器和 Tomcat
,但我不确定我这样做是否正确。
以下是我遵循的步骤:
在httpd.conf
文件中启用requiredModule
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
在httpd.conf
文件中添加了ifModule
条件
<IfModule mod_proxy>
ProxyPass / ajp://localhost:8009/
ProxyPassMatch ^(/photos/.*\.jpg)$!
</IfModule>
Alias /photos "F:\projects\AL\Photos"
<Directory "F:\projects\AL\Photos">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
最后,在 Tomcat
的 server.xml
文件中添加 Connector
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
现在,我尝试浏览到以下位置的 JSP 文件:
http://localhost:8009/examples/jsp/jsp2/el/basic-arithmetic.jsp
这工作正常,但我想浏览 JSP:
http://localhost/examples/jsp/jsp2/el/basic-arithmetic.jsp.
我也尝试过这个:
<IfModule mod_proxy>
ProxyPass / ajp://localhost:8009/
ProxyPassReverse / ajp://localhost:8009/
ProxyPassMatch ^(/photos/.*\.jpg)$!
Alias /photos "F:\projects\AL\Photos"
< Directory "F:\projects\AL\Photos">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</IfModule>
然后我尝试浏览以下网址
http://localhost/examples/jsp/jsp2/el/basic-arithmetic.jsp
这也不起作用。
我做对了吗?或者我还能做些什么?
最佳答案
使用<Location>
指令。
如:http://stuff.mit.edu/afs/athena/project/stellar-dist/www/stellar2/apache2/stellar2-ajp-proxy.conf
注意:在 ajp 路径结束后添加“/”非常重要,否则配置将抛出 404 错误。
关于java - 使用 Tomcat 配置 Apache Web 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1129695/