Ich habe eine seltsame Situation, wo ich die URLs app1.example.com
, example.com
und *.example.com
alle mit einem anderen virtuellen Host haben möchten. Das ist, was ich habe (ohne example.com
, weil es es gerade unordentlicher macht).Virtualhost für Wildcard-Subdomain und statische Subdomain
<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>
Das Problem ist, dass sie in Konflikt stehen. Welcher zuerst aufgeführt wird, gewinnt. Wie kann ich sowohl einen Wildcard-VirtualHost als auch einen spezifischen Hosthost verwalten?
Hinweis: Ich ändere nicht nur DocumentRoot
in der Konfig, so mod_rewrite
verwenden, um die DocumentRoot-Variable zu ändern, es nicht zu beheben.
Nur eine Frage auch weitere Informationen, was bedeutet 'Namevirtualhost *: 80' tun? –
Diese Direktive aktiviert die namensbasierten virtuellen Hosts und teilt apache mit, dass sie alle IPs (*) auf Port 80 abhören soll. Apache 2.2 Docs: http://httpd.apache.org/docs/2.2/en/vhosts/name-based .html –
Entfernen Sie den 'NameVirtualHost *: 80': AH00548: NameVirtualHost hat keine Wirkung und wird in der nächsten Version entfernt – nerdoc