Ich habe eine seltsame Situation , wo ich die URLs haben will app1.example.com
, example.com
und *.example.com
alle einen anderen virtuellen Host verwenden. Dies ist, was ich habe (außer, example.com
weil es nur unordentlicher macht).
<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. Wer zuerst aufgeführt wird, gewinnt. Wie kann ich sowohl einen virtuellen als auch einen bestimmten Wildcard-Host hosten?
Hinweis: Ich ändere nicht nur DocumentRoot
die Konfiguration, daher wird sie mod_rewrite
durch Ändern der DocumentRoot-Variablen nicht behoben.
NameVirtualHost *:80
das?NameVirtualHost *:80
: AH00548: NameVirtualHost hat keine Auswirkung und wird in der nächsten Version entferntNameVirtualHost *:80
ist wichtig für Apache 2.2, keine Notwendigkeit für Apache 2.4, ich weiß nicht warum.Platzhalter können nur in der
ServerAlias
und nicht in der verwendet werdenServerName
. Etwas, das mich verblüfft hatte.Für Ihren Anwendungsfall sollte Folgendes ausreichen
Weitere Informationen finden Sie auch unter https://www.chris-shaw.com/blog/using-wildcards-in-virtual-hosts-on-apache
quelle
Dies funktioniert auch für https benötigt eine Lösung, um Projektverzeichnisse zu erstellen, das war es. weil chrome kein ssl mehr mag, wird kein freies ssl mehr verwendet. Hinweis: Mein Webserver ist Wamp64 unter Windows 10, daher würde ich diese Konfiguration aufgrund von Variablen nur verwenden, wenn Sie wamp verwenden.
quelle