apache - 如何防止 tomcat7 在 apache 代理设置中重复上下文名称

标签 apache tomcat proxy

我遇到这个问题,我的 apache 使用代理将 http 请求转发到 tomcat(请参阅下面的我的 apache 虚拟主机配置)。它工作正常,但 web http 请求 http://subdomain.example.com/xyz/images/background2.jpg以/xyz/xyz/images/background2.jpg 的形式到达 tomcat。上下文名称“xyz”出现两次,导致在 tomcat 端丢失资源。

你是如何解决这个问题的?

Apache 虚拟主机配置文件

<VirtualHost *:80>
    ServerName subdomain.example.com

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    ProxyRequests Off
    ProxyPreserveHost On
    <Proxy *>
       Order deny,allow
       Allow from all
    </Proxy>
    ProxyPass / http://www.example.com:8080/xyz/
    ProxyPassReverse / http://www.example.com:8080/xyz/
</VirtualHost>

Tomcat 项目设置:../tomcat7/webapps/xyz/...

最佳答案

您需要如下更新 ProxyPass 设置。

ProxyPass /xyz/ http://www.example.com:8080/xyz/
ProxyPassReverse /xyz/ http://www.example.com:8080/xyz/

关于apache - 如何防止 tomcat7 在 apache 代理设置中重复上下文名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25628712/

相关文章:

python - 在 Apache 中使用多个 WSGI 挂载点和 Nginx 反向代理

java - 如何将网站重定向到不同的文件夹而不是 tomcat 中的 ROOT?

ubuntu - 如何允许通过 squid 代理服务器访问所有请求?

java - Axis 异常 : o. a.axis2.transport.http.HTTPSender.sendViaPost(196) - 无法发送 ViaPost - 连接被拒绝

apache - 绝对 uri : http://java. sun.com/jsp/jSTL/core 无法在 web.xml 或使用此应用程序部署的 jar 文件中解析

apache - 使用 mod_proxy 后,网络应用程序无法从其他计算机访问

java - Tomcat servlet - 状态 404 请求的资源不可用

java - 随机 URL 在网站中造成泛滥

python - environment.yml中的pip包如何使用.condarc中提供的代理?

php - 网站需要包含 index.php 的基本 url 才能正常工作