apache反向代理配置
我正在尝试为一个应用程序配置反向代理。 我正在使用Apache2.2Web服务器 下面是我的配置规则 代理请求关闭 代理主机 ProxyPass/app/() ProxyPassReverse/应用程序/ 问题: 当我点击本地服务器的url时,比如myserver.co.in/app/ 第一页即将到来(应用程序登录页)。在该应用程序重定向到url myserver.co.in/home/index.html之后,重定向失败。因为url中缺少“/app/”部分 有人能帮我解决这个问题吗。apache反向代理配置,apache,proxy,reverse-proxy,mod-proxy,Apache,Proxy,Reverse Proxy,Mod Proxy,我正在尝试为一个应用程序配置反向代理。 我正在使用Apache2.2Web服务器 下面是我的配置规则 代理请求关闭 代理主机 ProxyPass/app/() ProxyPassReverse/应用程序/ 问题: 当我点击本地服务器的url时,比如myserver.co.in/app/ 第一页即将到来(应用程序登录页)。在该应用程序重定向到url myserver.co.in/home/index.html之后,重定向失败。因为url中缺少“/app/”部分 有人能帮我解决这个问题吗。 提前感谢
提前感谢。因为apache dosnt知道您需要不同的页面,所以您需要将此虚拟主机的工作目录设置为应用所在的目录 比如说,
DocumentRoot "/www/example2"
因此,使用您的配置将是
<VirtualHost *:80>
DocumentRoot "/www/example2"
ProxyRequests off
ProxyPreserveHost on
ProxyPass /app/ (http://11.11.111.11:123/)
ProxyPassReverse /app/ http://11.11.111.11:123/
# Other directives here
</VirtualHost>
DocumentRoot“/www/example2”
代理请求关闭
代理主机
ProxyPass/应用程序/(http://11.11.111.11:123/)
ProxyPassReverse/应用程序/http://11.11.111.11:123/
#这里还有其他指示
您可以修改应用程序以添加/app
前缀或使用mod\u proxy\u html
以下引用自“”,并进行了修改以符合您的要求
简而言之,它允许您重写html、javascript和css,以便URL可以干净地通过反向代理。这意味着后端应用程序以
<script src="/script/application.js" type="text/javascript"></script>
mod_proxy_html将其转换为
<script src="/app/script/application.js" type="text/javascript"></script>
要使其正常工作,请将以下内容添加到httpd.conf
ProxyPass /app/ (http://11.11.111.11:123/)
ProxyPassReverse /app/ http://11.11.111.11:123/
ProxyHTMLURLMap http://11.11.111.11:123/ /app/
<Location /app/>
ProxyHTMLEnable On
ProxyPassReverse http://11.11.111.11:123/
SetOutputFilter proxy-html
ProxyHTMLURLMap / /app/
ProxyHTMLURLMap /app /app
</Location>
ProxyPass/app/(http://11.11.111.11:123/)
ProxyPassReverse/应用程序/http://11.11.111.11:123/
ProxyHTMLMAPhttp://11.11.111.11:123/ /应用程序/
可代理的
ProxyPassReversehttp://11.11.111.11:123/
SetOutputFilter代理html
ProxyHtmlURL/应用程序/
ProxyHTMLURLMap/app/app
您需要修复从应用程序返回的路径。您必须在必要时为它生成的URL添加前缀/app