it-swarm.com.de

Apache VirtualHost langsame Suche

Schließlich gelang es mir, die httpd.conf für meine Virtualhost-Anforderungen richtig zu konfigurieren. Dies ist der relevante Teil der Datei httpd.conf

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>

Wenn ich auf localhost (dh http: // localhost/phpmyadmin ) zugreife, ist alles sehr schnell ... Wenn ich auf test.local oder work.local (oder andere, von mir konfigurierte) zugreife, dauert es 10-15 Sekunden beim Nachschlagen. Die folgenden Anforderungen werden korrekt verarbeitet und sind sehr schnell, aber nach etwa einer Minute Inaktivität muss sie erneut nachschlagen.

Dies ist meine/etc/hosts-Datei

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

Wie könnte ich dieses nervige Problem beheben?

29
Leonardo Rossi

Fügen Sie Ihre virtuellen Hosts der ersten Zeile hinzu:

127.0.0.1       localhost test.local work.local yii.local

Und entferne die letzte Zeile.

Das sollte den Trick tun. Ihre vhosts sind jetzt ein Alias ​​für localhost. Es ist keine gute Idee, dieselbe IP-Adresse in mehreren Zeilen zu verwenden. Dies verwirrt nur den DNS-Cache.

66

Für alle, die Chrome verwenden und dennoch eine langsame Suche nach virtuellen Hosts erhalten, müssen Sie den Namen des virtuellen Hosts in etwas anderes als .local ändern, z. test.local in test.dev ändern.

Erklärung und Quelle hier: http://bencrowder.net/blog/2012/10/slow-localhost-in-chrome/

4
xdim222

Für mich war es das Editieren von httpd-vhosts.conf und das Ändern aller Instanzen von

<VirtualHost *:80>

zu:

<VirtualHost 0.0.0.0:80>

Es dauerte ungefähr 2 bis 5 Sekunden, um den Host zu lösen, jetzt ist es sofort. Ich musste die Reihenfolge meiner Websites in meiner Hosts-Datei nicht ändern. Dadurch wird nur ipv4 anstelle von ipv6 verwendet. Ich würde wetten, dass Sie es sowieso nicht verwenden.

3
Justin

Das Einstellen der IP für ServerName in der Datei httpd.conf hat für mich funktioniert

ServerName 127.0.0.1:80
0
Mihai Crăiță

Sie sollten auch andere Parameter in Ihre vhosts-Datei implementieren, wie z. B. separate Fehlerprotokolle und Serveralias


DocumentRoot "D:/xampp/htdocs/asd"
ServerName asd.com.br
ServerAlias ​​asd.com.br
ErrorLog "logs/asd.log"
CustomLog "logs/asd.log" kombiniert 

0
lucasmx