macos - vhost - ¿Cómo puedo eliminar la resolución/carga lenta de localhost/virtualhost(un retraso de 2-3 segundos) en Mac OS X Lion?
virtual host mac sierra (13)
Desde la configuración de mis entornos de desarrollo en Mac OS X Lion (nuevo macbook air comprado en enero de 2012), he notado que resolver un host virtual es muy lento (alrededor de 3 segundos) la primera vez, pero después de eso es tan rápido como Continúo cargando regularmente.
Si lo dejo intacto por un par de minutos y luego lo vuelvo a cargar, la primera recarga es (nuevamente) dolorosamente lenta; parece que algo está siendo guardado 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 - agregó 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>
¡Tenía exactamente el mismo problema y me estaba volviendo loco!
Coloque todas las entradas del archivo de hosts para localhost en una línea como esta:
127.0.0.1 localhost myproject.dev myotherproject.dev
::1 localhost
fe80::1%lo0 localhost
Funcionó como un encanto para mí. Parece un error en Lion.
Asegúrese de poner las entradas de IP v6 no en la línea con localhost
::1 localhost
las entradas de IP v6 van en una línea separada
fe80::1%lo0 here and_here
A veces es realmente rápido, pero existen raras excepciones en las que vuelven los viejos rezagos. Sin embargo, podrían basarse en otras razones.
Asegurar 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á en el principio, solo agrega tus entradas en la misma línea.
El truco que hizo por mí fue agregar
127.0.0.1 locahost
en la primera línea del archivo de host.
De todos mis servidores 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 disminuyó la velocidad, ya que solo agregué las direcciones para mis hosts virtuales y no también "localhost". Ahora todo es ágil de nuevo. :)
En OSX El Capitán, lo que funcionó para mí fue hacer una entrada IPv6 duplicada justo encima de la entrada IPv4 como tal
fe80::1%lo0 demo.test.dev
127.0.0.1 demo.test.dev
En mi caso, la desaceleración se debió a que algunas de las entradas en / etc / hosts ya no se usaban en mis servidores virtuales conf.
Especificar el mismo host para IPv6 :: 1 me ayudó.
127.0.0.1 something.local.mydomain.org
::1 something.local.mydomain.org
Hay otro problema 10.7. * A 10.8.4 para los sitios que terminan en ".local", que causa cinco segundas búsquedas. 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 de IPv6 para cada uno de sus vhosts en su archivo / etc / hosts: "
::1 mysite.local
fe80::1%lo0 mysite.local
127.0.0.1 mysite.local
Me he topado con esto un montón, también. Tengo un grupo 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ó.
127.0.0.1 faster.example.dev host1.example.dev host2.example.dev host3.example.dev host4.example.dev host5.example.dev host6.example.dev
::1 faster.example.dev host1.example.dev host2.example.dev host3.example.dev host4.example.dev host5.example.dev host6.example.dev
Nota: Estoy usando Windows y XAMPP, sin embargo, al investigar el problema, muchas personas han tenido el mismo problema en Windows y Mac. Responda como referencia para cualquier persona que encuentre esta pregunta, ya que he pasado horas tratando de encontrar una solución que funcione para mí:
He intentado muchas soluciones para el mismo problema, incluyendo poner todos los hosts en una línea, eliminar los hosts redundantes y los virtuales, y también incluir las líneas IPv6: ninguno de estos solo tuvo éxito.
La única solución que hasta ahora parecía funcionar para mí es una combinación de todas las soluciones:
- Cambiar el dominio que estoy usando desde mysite local a mysite. dev . Inspirado por la respuesta de @ Cleverlemming.
- Incluyendo las líneas IPv6.
- Eliminando hosts virtuales y hosts redundantes (los comenté).
En mi archivo hosts, mis hosts están actualmente en líneas separadas y hasta ahora el problema parece ser fijo.
Buena suerte a cualquiera que intente solucionar este problema y, si alguien tiene información para agregar, hágalo; parece ser un problema que afecta a muchas personas sin una sola causa o solución conocida.
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. Tardó unos segundos (en cada intento) para que el cliente descubriera que el DNS de IPv6 no estaba disponible o que no estaba disponible, y luego volvió a caer en el DNS de IPv4.
Tuve el 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
127.0.0.1 localhost host1 host2 host3 host4 host5 host1 host6
Eliminé la segunda instancia del mismo host (en el ejemplo anterior - host1) y todo se aceleró inmediatamente.
Me sentí un poco tonto cuando descubrí esto, pero cuando tienes 10 nombres largos de host en la misma línea y estás agregando / eliminando con frecuencia, se puede pasar por alto.
Tuve el mismo problema, también en Lion.
Extrañamente, mi solución fue la contraria a la de Jeremy. Tenía un montón de entradas someproject.dev en una línea en / etc / hosts. Cargando un sitio en cualquiera de ellos la primera vez tomó una eternidad, como un minuto más o menos. Si lo volví a usar en 5 segundos o más, fue muy rápido, pero mucho más y tardaría un minuto. Había sospechado todo tipo de cosas, conexiones de mysql, versiones de Ruby, errores de Rails, Apache, Phusion Passenger. Hasta que finalmente miré a la consola y me di cuenta de que se estaban intentando las búsquedas DNS.
Entonces, puse todos ellos en líneas separadas:
127.0.0.1 localhost
127.0.0.1 myproject.dev
127.0.0.1 myotherproject.dev
Y de repente todo fue ágil de nuevo. Lo mismo en mis dos máquinas.