Desde que configuré mis entornos de desarrollo en Mac OS X Lion (nueva macbook air comprada en enero de 2012), he notado que la resolución a un host virtual es muy lenta (alrededor de 3 segundos) la primera vez, pero luego es rápida siempre que Sigo cargándolo con regularidad.
Si lo dejo sin tocar durante un par de minutos y luego vuelvo a cargar, la primera recarga es (nuevamente) dolorosamente lenta; parece que algo se está almacenando en caché.
Como se puede ver a continuación, no estoy usando el TLD .local.
Mi configuración: Apache 2 - MySQL - PHP instalado y habilitado - agregué un par de hosts virtuales, uno de los cuales creé para localhost
Mi / etc / hosts:
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
127.0.0.1 myproject.dev
::1 myproject.dev
fe80::1%lo0 myproject.dev
Mi configuración de host virtual en username.conf:
NameVirtualHost *:80
<Directory "/Users/myusername/Sites/">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<VirtualHost *:80>
ServerName localhost
DocumentRoot /Users/myusername/Dropbox/dev_envs/
</VirtualHost>
<VirtualHost *:80>
ServerName myproject.dev
DocumentRoot /Users/myusername/Dropbox/dev_envs/myprojectname
</VirtualHost>
Respuestas:
¡Tuve exactamente el mismo problema y me estaba volviendo loco!
Ponga todas las entradas del archivo de hosts para localhost en una línea así:
Funcionó como un encanto para mí. Parece un error en Lion.
fuente
Hay otro problema de 10.7. * A 10.8.4 para sitios que terminan en ".local" que provoca búsquedas de cinco segundos. Detalles y solución cortesía de Bram (us) Van Damme en el siguiente enlace:
http://www.bram.us/2011/12/12/mamp-pro-slow-name-resolving-with-local-vhosts-in-lion-fix/
"De forma predeterminada, cualquier nombre de host que termine en .local se trata como un host Bonjour en lugar de consultar las entradas del servidor DNS en las preferencias de red.
Para solucionar este problema (sin tener que cambiar el nombre de cada vhost), debe agregar entradas IPv6 para cada uno de sus vhosts en su archivo / etc / hosts: "
fuente
.local
Parecía que solo me encontré con esto con sitios que terminan en , y agregar ambas entradas IPV4 / 6 me solucionó todo (OS X 10.9)::1
es el acceso directo IPv6 equivalente a127.0.0.1
. ¿Pero quéfe80::1%lo0
significa? - ah, respondió a superuser.com/questions/241642/...Tuve el mismo problema, también en Lion.
Curiosamente, mi solución fue la opuesta a la de Jeremy. Tenía un montón de entradas someproject.dev en una línea en / etc / hosts. Cargar un sitio en cualquiera de ellos por primera vez tomó una eternidad, como un minuto más o menos. Si lo usaba de nuevo en 5 segundos más o menos, era muy rápido, pero mucho más largo y nuevamente me tomaría un minuto. Había sospechado de todo tipo de cosas, conexiones mysql, versiones Ruby, errores de Rails, Apache, Phusion Passenger. Hasta que finalmente miré la consola y me di cuenta de que se estaban intentando realizar búsquedas de DNS.
Entonces, los puse todos en líneas separadas:
Y de repente todo volvió a ser rápido. Lo mismo en mis dos máquinas.
fuente
Especificar el mismo host para IPv6 :: 1 me ayudó.
fuente
Asegúrese de poner las entradas de IP v6 no en la línea con localhost
las entradas de IP v6 van en una línea separada
A veces es realmente rápido ahora, pero hay raras excepciones en las que los viejos retrasos regresan. Sin embargo, pueden basarse en otras razones.
fuente
En OSX El Capitan, lo que funcionó para mí fue hacer una entrada de IPv6 duplicada justo encima de la entrada de IPv4 así
fuente
Asegurarme de que los nombres de host estén definidos al principio del archivo marcó la diferencia para mí. Por defecto, la línea 127.0.0.1 localhost ya está al principio, simplemente agregue sus entradas en la misma línea.
fuente
Tuve el mismo problema y descubrí que se debía a que habilitaba IPv6 en mi LAN, pero no tenía IPv6 configurado correctamente entre mi red y mi ISP. Aparentemente, el servidor DNS IPv6 tiene prioridad sobre el DNS IPv4 cuando el cliente recibe ambos. El cliente tardó un par de segundos (en cada intento) en encontrar que el DNS IPv6 no estaba disponible o no estaba disponible, y luego recurrió al DNS IPv4.
fuente
Nota: Estoy usando Windows y XAMPP, sin embargo, mientras investigaba el problema, muchas personas han tenido el mismo problema en Windows y Mac. Responda como referencia para cualquiera que encuentre esta pregunta, ya que he pasado horas tratando de encontrar una solución que funcione para mí:
He probado muchas soluciones para el mismo problema, incluida la colocación de todos los hosts en una línea, la eliminación de hosts redundantes y virtuales, y también la inclusión de las líneas IPv6; ninguna de estas por sí sola tuvo éxito.
La única solución que hasta ahora parece funcionar para mí es una combinación de todas las soluciones:
En mi archivo de hosts, mis hosts están actualmente en líneas separadas y hasta ahora el problema parece estar solucionado.
Buena suerte a cualquiera que intente resolver este problema y si alguien tiene alguna información para agregar, hágalo; este parece ser un problema que afecta a muchas personas sin una única causa o solución conocida.
fuente
Tuve este mismo problema y finalmente me di cuenta de que tenía la misma entrada de host dos veces en la misma línea:
p.ej
Eliminé la segunda instancia del mismo host (en el ejemplo anterior, host1), y las cosas se aceleraron de inmediato.
Me sentí un poco tonto cuando descubrí esto, pero cuando tienes 10 nombres de host largos en la misma línea y estás agregando / quitando con frecuencia, es fácil pasarlo por alto.
fuente
El truco que me sirvió fue agregar
en la primera línea del archivo de host.
De todos mis hosts virtuales, solo los que usaban una base de datos eran lentos. Creo que es porque el proceso de buscar "localhost" para la conexión de la base de datos ralentizó las cosas, ya que solo agregué las direcciones para mis hosts virtuales y no también "localhost". Ahora todo vuelve a ser rápido. :)
fuente
También me he encontrado con esto un montón. Tengo un montón de vhosts definidos en dos líneas, una para IPv4 y otra para IPv6. Mover el host que estaba tratando de resolver para ser el primero en la lista lo aceleró.
fuente
Un problema tonto que me llevó a perder un tiempo considerable: después de aplicar la respuesta de @ Cleverlemming , descubrí que había entradas duplicadas en el archivo de hosts. Algo como:
Luego, la resolución de IP para site3.local y site4.local toma estos 5 segundos de muerte.
fuente