Error:“VirtualHost *:80: no se admite la combinación de puertos * y puertos no* con una dirección NameVirtualHost; se continúa con resultados indefinidos”
Pregunta
Estoy ejecutando WAMP v2.0 en Windows XP y tengo varios hosts virtuales configurados en el archivo http-vhosts.conf.
Esto estaba funcionando, pero en la última semana, cada vez que intento iniciar WAMP, aparece este error en los registros de eventos:
VirtualHost *: 80-Mezcla * puertos y puertos no * con una dirección NameVirtualHost no es compatible con resultados indefinidos.
y el servidor no arranca.No puedo pensar en lo que ha cambiado.
Copié el archivo conf a continuación.
NameVirtualHost *
<VirtualHost *:80>
ServerName dev.blog.slaven.net.au
ServerAlias dev.blog.slaven.net.au
ServerAdmin user@host.com
DocumentRoot "c:/Project Data/OtherProjects/slaven.net.au/blog/"
ErrorLog "logs/blog.slaven.localhost-error.log"
CustomLog "logs/blog.slaven.localhost-access.log" common
<Directory "c:/Project Data/OtherProjects/slaven.net.au/blog/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
EDITAR: Quise agregar, si cambio la directiva NameVirtualHosts para especificar un puerto, es decir
NameVirtualHost *:80
Recibo este error:
Normalmente sólo se permite un uso de cada dirección de socket (protocolo/dirección de red/puerto).:hacer_calcetín:no se pudo vincular a la dirección 0.0.0.0:80
Solución
NombreVirtualHost *:80
Recibo este error:
Normalmente sólo se permite un uso de cada dirección de socket (protocolo/dirección de red/puerto).:hacer_calcetín:no se pudo vincular a la dirección 0.0.0.0:80
Creo que esto podría deberse a que tienes algo más escuchando en el puerto 80.¿Tiene algún otro servidor (o por ejemplo Skype) ejecutándose?
(Si fuera Skype:desmarque "Herramientas > Opciones > Avanzado > Conexión > Usar los puertos 80 y 443 como alternativas para conexiones entrantes")
Otros consejos
Bueno, parece que el problema es la forma (y el orden) en que asignas los puertos.
Básicamente, *:80 significa "usar el puerto 80 para todos los hosts en esta configuración".Cuando haces esto, Apache intenta vincular ese host a 0.0.0.0:80, lo que significa que ese host recibirá cada paquete que llegue a la máquina a través del puerto 80, independientemente del host virtual al que estaba destinado.Esto es algo que debes usar sólo una vez y sólo si tienes uno host en esa configuración.
Por lo tanto, si tiene la misma directiva *:80 en dos hosts en el archivo de configuración, el servidor no se cargará porque intentará vincular 0.0.0.0:80 dos veces, fallando en el segundo intento.(que explica que "normalmente sólo se permite un uso de cada dirección de socket (protocolo/dirección de red/puerto).:hacer_calcetín:no se pudo vincular a la dirección 0.0.0.0: mensaje 80").