You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Trenta sis <tr...@gmail.com> on 2015/09/18 09:56:22 UTC

[users@httpd] apache reverse proxy 2 applications

Hi,

we are trying to configure a reverse proxy for two applications, our
problem is that we have detected a path conflict

app1 uses some resources like:

/zimbra/
/service/
/home/
/img/
/css/
/res/
/js/
/skins/


app2 uses
/images/
/styles/
/charts/
/js/
/userdocs/
/local/


our probems is that both applications has /js/ resource and this is a
conflict because both applications are mapped with https://server/resource

We need to use like https://server/app1/resource and
https://server/app2/resource but I don't know how can I do....

Config attached:

APP1
        SetEnv force-proxy-request-1.0 1
        SetEnv proxy-nokeepalive 1
        SetEnv proxy-initial-not-pooled 1

        # Proves proxy invers
        ProxyRequests Off
        ProxyPreserveHost On

        <Proxy *>
        Order deny,allow
        Allow from all
#       Allow from 127.0.0.1
        </Proxy>

ProxyPass    /zimbra/restringido    !
ProxyPass    /zimbra/    https://server-app1.domain.local/
ProxyPass    /service/    https://server-app1.domain.local/service/
ProxyPass    /home/    https://server-app1.domain.local/home/
ProxyPass    /img/    https://server-app1.domain.local/img/
ProxyPass    /css/    https://server-app1.domain.local/css/
ProxyPass    /res/    https://server-app1.domain.local/res/
ProxyPass    /js/    https://server-app1.domain.local/js/
ProxyPass    /skins/    https://server-app1.domain.local/skins/

ProxyPassReverse    /zimbra/    https://server-app1.domain.local/
ProxyPassReverse    /service/    https://server-app1.domain.local/service/
ProxyPassReverse    /home/    https://server-app1.domain.local/home/
ProxyPassReverse    /img/    https://server-app1.domain.local/img/
ProxyPassReverse    /css/    https://server-app1.domain.local/css/
ProxyPassReverse    /res/    https://server-app1.domain.local/res/
ProxyPassReverse    /js/    https://server-app1.domain.local/js/
ProxyPassReverse    /skins/    https://server-app1.domain.local/skins/

ProxyHTMLURLMap https://server-app1.domain.local /zimbra
ProxyHTMLURLMap https://server-app1.domain.local/service /service
ProxyHTMLURLMap https://server-app1.domain.local/home /home
ProxyHTMLURLMap https://server-app1.domain.local/img /img
ProxyHTMLURLMap https://server-app1.domain.local/css /css
ProxyHTMLURLMap https://server-app1.domain.local/res /res
ProxyHTMLURLMap https://server-app1.domain.local/js /js
ProxyHTMLURLMap https://server-app1.domain.local/skins /skins

<Location /zimbra>
    ProxyPassReverse /
#    ProxyHTMLEnable On
        ProxyHTMLInterp On
    ProxyHTMLURLMap  /      /zimbra/

    Order Allow,Deny
    Allow from all
</Location>

<Location "/service">
  ProxyPassReverse /
ProxyHTMLInterp On
#  ProxyHTMLExtended      On
  ProxyHTMLURLMap / /service
</Location>

<Location "/home">
  ProxyPassReverse /
ProxyHTMLInterp On
#  ProxyHTMLExtended      On
  ProxyHTMLURLMap / /home
</Location>

<Location "/img">
  ProxyPassReverse /
ProxyHTMLInterp On
#  ProxyHTMLExtended      On
  ProxyHTMLURLMap / /img
</Location>

<Location "/css">
  ProxyPassReverse /
ProxyHTMLInterp On
#  ProxyHTMLExtended      On
  ProxyHTMLURLMap / /css
</Location>

<Location "/res">
  ProxyPassReverse /
ProxyHTMLInterp On
#  ProxyHTMLExtended      On
  ProxyHTMLURLMap / /res
</Location>

<Location "/js">
  ProxyPassReverse /
ProxyHTMLInterp On
#  ProxyHTMLExtended      On
  ProxyHTMLURLMap / /js
</Location>

<Location "/skins">
  ProxyPassReverse /
ProxyHTMLInterp On
#  ProxyHTMLExtended      On
  ProxyHTMLURLMap / /skins
</Location>



APP2
ProxyPass    /images/    https://server-app2.domain.local:8181/images/
ProxyPass    /styles/    https://server-app2.domain.local:8181/styles/
ProxyPass    /charts/    https://server-app2.domain.local:8181/charts/
ProxyPass    /js/    https://server-app2.domain.local:8181/js/
ProxyPass    /userdocs/    https://server-app2.domain.local:8181/userdocs/
ProxyPass    /local/    https://server-app2.domain.local:8181/local/


ProxyPassReverse    /images/
https://server-app2.domain.local:8181/images/
ProxyPassReverse    /styles/
https://server-app2.domain.local:8181/styles/
ProxyPassReverse    /charts/
https://server-app2.domain.local:8181/charts/
ProxyPassReverse    /js/    https://server-app2.domain.local:8181/js/
ProxyPassReverse    /userdocs/
https://server-app2.domain.local:8181/userdocs/
ProxyPassReverse    /local/    https://server-app2.domain.local:8181/local/

ProxyHTMLURLMap https://server-app2.domain.local:8181/images /images
ProxyHTMLURLMap https://server-app2.domain.local:8181/styles /styles
ProxyHTMLURLMap https://server-app2.domain.local:8181/charts /charts
ProxyHTMLURLMap https://server-app2.domain.local:8181/js /js
ProxyHTMLURLMap https://server-app2.domain.local:8181/userdocs /userdocs
ProxyHTMLURLMap https://server-app2.domain.local:8181/local /local


    <Proxy /app2/>
        ProxyHTMLLogVerbose On
        ProxyHTMLURLMap     https://192.168.0.1:8181/app2/ /app2/
        ProxyHTMLURLMap     / /app2/
        #
        ProxyPass         https://192.168.0.1:8181/app2/
        ProxyPassReverse  https://192.168.0.1:8181/app2/
    </Proxy>


We have tried to configure js2 in app2 but is not working, appear an error
404 for js for app2...

How can we solve?



Thanks