Tengo una situación extraña en la que quiero tener las URL app1.example.com
, example.com
y *.example.com
, todas usando un host virtual diferente. Esto es lo que tengo (excluyendo example.com
porque simplemente lo hace más desordenado).Virtualhost para subdominio de comodín y subdominio estático
<VirtualHost *>
ServerName app1.example.com
ServerAlias app1.example.com
DocumentRoot = /var/www/app1
# Other configuration for this app here
</VirtualHost>
<VirtualHost *>
ServerName wildcard.example.com
ServerAlias *.example.com
DocumentRoot = /var/www/wildcard
# other configuration for this app here
</VirtualHost>
El problema es que entran en conflicto. Cualquiera que esté en la lista primero gana. ¿Cómo puedo alojar un host virtual comodín y uno específico?
Nota: No estoy simplemente cambiando DocumentRoot
en la configuración, por lo que usar mod_rewrite
para cambiar la variable DocumentRoot no lo arregla.
Sólo una pregunta, ¿qué significa 'NameVirtualHost *: 80' hacer? –
Esta directiva habilita los servidores virtuales basados en el nombre y le indicará a apache que escuche en todas las direcciones IP (*) en el puerto 80. Apache 2.2 Docs: http://httpd.apache.org/docs/2.2/en/vhosts/name-based .html –
Elimina el 'NameVirtualHost *: 80': AH00548: NameVirtualHost no tiene ningún efecto y se eliminará en el siguiente lanzamiento – nerdoc