25 votos

Decididos a host virtual muy lento en Mac OS X Lion

Desde la actualización a Mac OS X Lion (Snow Leopard), me he dado cuenta de que la solución a un host virtual es muy lento (aproximadamente 3 segundos). He encontrado una serie de consejos (por ejemplo, el no uso de el .local TLD) que podría resolver esto, pero que no se aplican a mi configuración.

Mi configuración es bastante simple: - Apache 2 (suministrado con León) habilitado para PHP - añadido un par de hosts virtuales - instalado de Correo SMTP y paquetes Pear

Apache archivo hosts se parece a esto:

127.0.0.1   localhost
255.255.255.255 broadcasthost
::1             localhost 
fe80::1%lo0 localhost
127.0.0.1   tbi.dev
127.0.0.1   www.tbi.dev
127.0.0.1   test1.tbi.dev
127.0.0.1   test2.tbi.dev
127.0.0.1   psa.dev
127.0.0.1   snd.dev

Y Apache virtual del archivo de hosts se parece a esto:

<VirtualHost *:80>
    DocumentRoot "/Users/Bart/Sites/tbi"
    ServerName tbi.dev
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/Users/Bart/Sites/tbi"
    ServerName tbi.dev
    ServerAlias *.tbi.dev www.tbi.dev
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/Users/Bart/Sites/psa"
    ServerName psa.dev
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "/Users/Bart/Sites/sandbox"
    ServerName snd.dev
</VirtualHost>

La instalación es básicamente idéntico a mi el programa de instalación de Snow Leopard, pero Apache rendimiento para la resolución de los hosts virtuales es significativamente diferente. Puedo ejecutar Mac OS X Lion 10.7.2, pero el problema ya estaba presente cuando se ejecuta 10.7.1.

Esto podría parecer un pequeño problema, pero cuando se está accediendo a una de las máquinas virtuales de un par de cientos de veces al día, a continuación, esto se suma a una importante pérdida de tiempo como usted puede imaginar.

24voto

adaptr Puntos 14002

Largos tiempos de espera de DNS son casi siempre un signo de problemas de IPv6.

¿Necesita conectividad IPv6 a apache?

Si no, te sugiero cambiar

<VirtualHost *:80>

en

<VirtualHost 0.0.0.0:80>

O desactivar la conectividad IPv6 en conjunto.

22voto

NoICE Puntos 251

Me he topado con esto justo ahora.

De esta forma se establecerá el IPv6 en la configuración de la Red para...

# list all network interfaces to get their names
networksetup -listallnetworkservices
# disable the one you want, in my case it's WiFi
networksetup -setv6off Wi-Fi

Pero.. por desgracia esto no resuelve el DNS de resolución de problema, para mí (tal vez después de reiniciar el sistema). Lo que realmente me ayudó fue añadir ipv6 estilo de IPs a /etc/hosts como este:

# my original /etc/hosts ...
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1             localhost 
fe80::1%lo0 localhost

127.0.0.1 project.local

# adding this solved resolving:
fe80::1%lo0 project.local

wget http://project.local ahora se muestra al instante

Resolving project.local... 127.0.0.1
Connecting to project.local|127.0.0.1|:80... connected.

en lugar de pasar por 5 segundos en Resolver el proyecto.local.

12voto

Artur Bodera Puntos 131

En MacOSX Lion .local de dominio ha sido "reservado" para la Multidifusión de Resolución de DNS (bonjour).

Esto significa que buscando cualquier dominio que termina con .local resultará en mDNS de búsqueda (hasta 5 años) antes de /etc/hosts.

Correcciones:

  1. Cambiar los dominios de prueba a algunos otros TLD (es decir, .dev)
  2. Uso dscl herramienta para agregar una excepción.

3voto

DTest Puntos 1340

Echa un vistazo a este blog para ver si te ayuda, resaltando específicamente problema #2:

Al parecer, el terminal y algunas de las herramientas de BSD Unix utilizan correctamente /etc/resolv.conf y el orden correcto de/etc/aloja primero y luego los servidores DNS. Sin embargo, todo lo demás en OS X Lion, incluyendo todas sus aplicaciones, hacerlo al revés!

1voto

hypnosis Puntos 11

Funciona.

Usar esta solución

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1   localhost
255.255.255.255 broadcasthost
::1             localhost6
fe80::1%lo0 localhost

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: