我有一个在Tomcat上运行的Java门户,但我希望它的静态内容(HTML除外)由Apache httpd提供。
所以我已经安装了Apache httpd,现在正在配置httpd.conf
我知道我需要类似以下文字的内容:
<VirtualHost *:80>
DocumentRoot /opt/tomcat/webapps/ROOT
ServerName mywebapp.com
ServerAlias mywebapp.com
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPassMatch "^/(.*\.gif)$" "ajp://localhost:8009/$1"
ProxyPassReverse / ajp://localhost:8009/
但这只是一个示例,我不知道如何在ProxyPassMatch之前使用RegEx来实现我的目的。
我的目的是通过Apache httpd提供jpg,jpeg,gif,js,css
Tomcat提供的其他服务
最佳答案
我找到了解决方案:
<VirtualHost *:80>
DocumentRoot /opt/tomcat/webapps/ROOT
ServerName mywebapp.com
ServerAlias mywebapp.com
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
#ProxyPass / ajp://localhost:8010/
ProxyPassMatch ^/(.*(?<!\.jpg)(?<!\.png)(?<!\.jpeg)(?<!\.css)(?<!\.ico)(?<!\.bmp)(?<!\.js)(?<!\.gif))$ ajp://localhost:8009/$1
ProxyPassReverse / ajp://localhost:8009/
</VirtualHost>
关于java - 在Tomcat + Apache上将mod_proxy_ajp用于Java门户,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34327861/