apachetomcatmod-proxy-ajp

Subdomain ajp proxy from Apache to Tomcat


I have a domain domain.com that points to a server. Now I have a subdomain sub.domain.com that points to another server that has Apache running and Tomcat.

I have configured the following in httpd.conf:

<VirtualHost *:80>
    ServerName domain.com
    ProxyRequests Off
    ProxyPreserveHost On
    <Proxy *>
    Order deny,allow
        Allow from all
    </Proxy>
    ProxyPass / ajp://localhost:8009/
    ProxyPassReverse / ajp://localhost:8009/
</VirtualHost>

<VirtualHost *:80>
    ServerName sub.domain.com
    ProxyRequests Off
    ProxyPreserveHost On
    <Proxy *>
    Order deny,allow
        Allow from all
    </Proxy>
    ProxyPass / ajp://localhost:8009/
    ProxyPassReverse / ajp://localhost:8009/
</VirtualHost>

and in Tomcats server.xml:

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

But when I go to sub.domain.com it goes to otherdomain.com and shows me this php website declared as following:

<VirtualHost *:80>
        DocumentRoot /var/www/html/otherdomain.com
        ServerName otherdomain.com
        ServerAlias www.otherdomain.com
</VirtualHost>

I only get it to work when I change the port in both domain.com and sub.domain.com virtual host declarations to something like 8001. Then when I go to sub.domain.com:8001 it shows my tomcat application (ROOT.war).

So my question is: what could be going wrong that it doesn't work with the default port 80? I can't find any configuration that is causing this, but I'm probably missing something?


Solution

  • Apparently my configuration is correct after all. It was just my browsers cache playing tricks on me. I have caching now disabled when developing to not have this happening again.