Ho una strana situazione in cui voglio avere gli URL app1.example.com
, example.com
e *.example.com
tutti utilizzando un host virtuale diverso. Questo è quello che ho (escluso lo example.com
perché lo rende solo più incasinato).Virtualhost per sottodominio wildcard e sottodominio statico
<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>
Il problema è che sono in conflitto. Qualunque sia elencata per prima, vince. Come posso ospitare sia un host virtuale jolly che uno specifico?
Nota: non sto cambiando semplicemente DocumentRoot
nella configurazione, pertanto l'uso di mod_rewrite
per modificare la variabile DocumentRoot non lo risolve.
Solo una domanda, che cosa 'NameVirtualHost *: 80' fare? –
Questa direttiva abilita gli host virtuali basati sul nome e dirà ad apache di ascoltare su tutti gli ip (*) sulla porta 80. Documenti Apache 2.2: http://httpd.apache.org/docs/2.2/en/vhosts/name-based .html –
Rimuovi il 'NameVirtualHost *: 80': AH00548: NameVirtualHost non ha alcun effetto e verrà rimosso nella prossima versione – nerdoc