Hello everyone,

I have an issue with the proxy and subdirectory on httpd. What I wanted
is whenever clients access http://mydomain.com/host1/, the server **host
A** will proxy it to **host B** internally, with the URI
http://mydomain.com/host1/ base unchanged. The httpd.conf on **host A**
has the following:

<VirtualHost *:80>
  ServerName mydomain.com
  ProxyPreserveHost on
  <Location ā€œ/host1/ā€œ>
    ProxyPass "http://192.168.4.12/"; retry=0
    ProxyPassReverse "http://192.168.4.12/";
  </Location>
</VirtualHost>

In the above httpd.conf, the internal IP 192.168.4.12 is the IP of the
**host B**, and *host1* is just a *virtual* directory that Iā€™d like to
name it. The **host B** is serving phpMyAdmin page, with the following
httpd.conf

<VirtualHost *:80>
    DocumentRoot /var/www/html/phpMyAdmin
    <Directory /var/www/html/phpMyAdmin>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
    ServerName 192.168.4.12
    ErrorLog logs/192.168.4.12_81_error_log
    CustomLog logs/192.168.4.12_81_access_log common
</VirtualHost>

Accessing phpMyAdmin on **host B** internally in my network, with the
URL http://192.168.4.12/ work just fine, ie
http://192.168.4.12/index.php?abc will show
http://192.168.4.12/index.php?abc. However, when I tried externally, it
does not work as expected:

 - Accessing http://mydomain.com/host1/index.php works fine, showing
phpMyAdmin log in page
 - After entering username / password to log in, the URL on my browser
becomes http://mydomain.com/index.php?token=abc instead of
http://mydomain.com/host1/index.php?token=abc. Somehow the virtual
subdirectory *host1* disappeared.

Please help!

Thanks

D.

Reply via email to