1

I have two Apache virtual hosts set up on an Ubuntu 16.04 VPS.

  • site1.example.com is a properly functioning WordPress site.

  • site2.example.com is a newly added site with only index.php in its document root.

When I visit site2.example.com in a browser, it unexpectedly redirects to site1.example.com (the WP site).

However, if I visit site2.example.com/index.php, index.php is displayed as expected.

Here are the contents of the .conf files in /etc/apache2/sites-available:

site1.conf:

<VirtualHost *:80>
ServerName site1.example.com
DirectoryIndex index.html index.php
DocumentRoot /var/www/html/site1.example.com/public_html
</VirtualHost>

site2.conf:

<VirtualHost *:80>
ServerName site2.example.com
DirectoryIndex index.html index.php
DocumentRoot /var/www/html/site2.example.com/public_html
</VirtualHost>

What can I do to get http://site2.example.com/ to display index.php without being explicitly requested in the URL?

If anyone has any suggestions or needs to see another part of my config, please let me know.

MrWhite
  • 11,643
  • 4
  • 25
  • 40
  • "it unexpectedly redirects" - If you examine the network traffic in the browser, do you see an external 3xx redirect? Make sure you've cleared your browser cache. – MrWhite Mar 08 '17 at 01:02
  • 1
    @w3dk Clearing the browser cache resolved the problem. Thanks! I was not aware that something in the browser cache could cause this behavior. I figured requesting a new subdomain url would ensure a request was made to the server. If you'd like to give a short explanation of what may have happened as an answer, I'll mark it as accepted. – Approval Junkie Mar 08 '17 at 01:29

1 Answers1

2

...it unexpectedly redirects to site1.example.com

If you are seeing a 3xx redirect, and you don't currently have any external redirects configured then it's possible you are seeing a cached redirect - which appears to have been the case in this instance. Make sure the browser cache is cleared. Any 301 (permanent) redirects are cached hard by the browser - even if only used briefly for testing. (On the other hand, 302 temporary redirects are not cached.)

Note that site2.example.com/ and site2.example.com/index.php are two different URLs and so are cached independently.

Maybe site2.example.com/ was caught by an earlier canonical domain redirect?

MrWhite
  • 11,643
  • 4
  • 25
  • 40