我有一个具有下一个结构的应用程序:
/application (html files)
/application/css (css files)
/application/img (images)
/application/classes -> I want this to redirect to a application server (JBoss)如何配置apache?
如果我这么做了,为什么不起作用:
ProxyPreserveHost On
ProxyPass /application !
ProxyPass /application/css !
ProxyPass /application/img !
ProxyPass /application/classes http://jboss_server:8080/
ProxyPassReverse /application/classes http://jboss_server:8080发布于 2009-08-13 14:25:13
确保服务器具有相同的结构!
ProxyPass /application/classes http://jboss_server:8080/application/classes
ProxyPassReverse /application/classes http://jboss_server:8080/application/classes您不必使用其他proxypass值,因为"classes“在"application”下!因此,只有当您使用/application/classes而不是使用/application/img时,代理才会被调用。
发布于 2009-08-13 14:07:14
我想你的语法有点不对。它应该是:
ProxyPass /mirror/foo/ http://foo.com/也许是这样的:
ProxyPass / http://sso.domain.com/
ProxyPassReverse / http://sso.domain.com/发布于 2009-08-13 14:21:52
我用mod_rewrite来做这个--这给了我更多的力量。
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/server-info
RewriteCond %{REQUEST_URI} !^/server-status
RewriteRule ^/application/classes(.*) http://jboss_server:8080/$1 [P,L,NS]第一行将使HTTPd服务于在DOCUMENT_ROOT中可以找到的任何请求文件,而无需将请求转发到app服务器。我在web服务器上部署了一组单独的静态文件。
另外两行将防止HTTPd服务器-*页面被代理,因此它们将由HTTPd提供服务。您可以添加更多此类异常,以便由HTTPd处理。
在这种情况下,指令ProxyPreserveHost和ProxyPassReverse也可能有用。
https://serverfault.com/questions/53735
复制相似问题