I finally managed how to configure properly httpd.conf for my virtualhost needings. This is the relevant part of httpd.conf file
NameVirtualHost *:80 <VirtualHost *:80> ServerName localhost DocumentRoot /Applications/XAMPP/htdocs/ </VirtualHost> <VirtualHost *:80> ServerName test.local DocumentRoot /Applications/XAMPP/htdocs/test/ </VirtualHost> <VirtualHost *:80> ServerName work.local DocumentRoot /Applications/XAMPP/htdocs/work/ </VirtualHost>
When I access anything on localhost (i.e. http://localhost/phpmyadmin) everything is very fast. Whenever I access test.local or work.local (or others I configured) it spends 10-15 seconds on lookup. The following requests are handled correctly and it's very fast but after a minute or so of inactivity, it has to lookup again.
This is my /etc/hosts file
127.0.0.1 localhost 255.255.255.255 broadcasthost #::1 localhost fe80::1%lo0 localhost # Virtualhosts 127.0.0.1 test.local work.local yii.local
How could I fix this annoying issue?
Add your virtual hosts to the first line:
127.0.0.1 localhost test.local work.local yii.local
And remove the last line.
That should do the trick. Your vhosts are now an alias for localhost. It's not a good idea to have the same IP-address in multiple lines. This just confuses the DNS-cache.
For anyone who is using Chrome and still gets slow virtual host lookup, you need to change the virtual host name to something else than .local
, eg. change test.local
to test.dev
.
Explanation and source here: http://bencrowder.net/blog/2012/10/slow-localhost-in-chrome/
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With