Hi,

I'm struggling to get Apache to work properly as a Proxy to an internal
server.  I have two copies of the same application running on this internal
server (both ASP applications running on IIS) that I need to access via
different URLs.  I have managed to configure on and got it working without
problems, but it is the second one that is causing me the problem.

Here is my config file
<VirtualHost *:80>
   ServerName www.domain.com
   DocumentRoot "/var/www/html/www.domain.com"

# Production Server
<Location /ASPTest/>
        ProxyPassReverse /
</Location>
        ProxyPass               /ASPTest/ http://192.168.100.1/

# Development & Test Server
<Location /dev/ASPTest/>
        ProxyPassReverse /
</Location>
        ProxyPass               /dev/ASPTest/ http://192.168.100.1:8080/
</VirtualHost>



The ASP application's default.aspx page has a button that redirects the user
to intro.aspx
( Response.Redirect("intro.aspx") )



Now, accessing the server as www.domain.com/ASPTest/ works without problems.
I see the application running on 192.168.100.1 properly.  When I click the
submit button on the default.aspx page, I get redirected to
http://www.domain.com/ASPTest/intro.aspx.  And so on.  This applications
works perfectly well.


However, when I try to access http://www.domain.com/dev/ASPTest/, I run into
problems.  The default page loads fine and shows me default.aspx from port
8080.  However, when I click the submit button on it, I get redirected to
the same page as the non-development one -
http://www.domain.com/ASPTest/intro.aspx.  So from that point on, I am no
longer working with the development code and back to the live production
one.


I tried to use ProxyPassReverse without the <Location> headers, but it
doesn't work at all as soon as it receives the Response.Redirect() code.



Can anyone point me in the right direction here?  Why is my redirect from
/dev/ASPTest/ getting redirected to /ASPTest/ instead?


Thanks!

Eric





Reply via email to