I have a Apache 2.2.22 + PHP 5.4.9 running on a Ubuntu 12.04
I'm hosting three sites here. For that, i have 2 virtual host pointing to three differents folders.
For example, this is one Vhost for domain1
<VirtualHost *:80>
ServerName domain1.com
ServerAlias www.domain1.com
ServerAdmin support@server.com
DocumentRoot /mnt/htdocs/domain1.com/public
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /mnt/htdocs/domain1.com/public>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/domain1.com-error.log
CustomLog ${APACHE_LOG_DIR}/domain1.com-access.log combined
</VirtualHost>
The this here is that the 1% of the hits goes to incorrect folder. the other 99% goes to the correct folder and resolve the correct domain/code.
Example of the error in domain1.com's error log
[Fri Feb 14 15:21:45 2014] [error] [client 10.183.250.134] PHP Fatal error: Class 'Sitemap\\SitemapServiceProvider' not found in /mnt/htdocs/domain1.com/vendor/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php on line 123, referer: http://www.site2.com/someurl
This service provider doesn't exists because domain2.com is routed to domain1.com's folder.
This error is COMPLETELY RANDOM. If I reload the error page, the site render ok.
I checked all the lines of vhosts, erasing all the non critical to keep it simple but the error continues.
Any thought?