
Ich weiß, wie man mehrere Hosts in einer Apache-httpd.conf-Datei einrichtet, aber ist es möglich, das dynamisch zu gestalten?
Wenn ich meine Ordner in Verzeichnissen wie diesem ablege.
c:\
development\
websites\
SiteA
SiteB
SiteC
Kann ich meine httpd.conf-Datei so schreiben?
<VirtualHost *:80>
ServerName *.example.com
DocumentRoot "c:/development/Websites/%1/"
</VirtualHost>
wobei %1
oder ein anderer Variablenmarker SiteA ist, wenn der Benutzer sitea.example.com usw. besucht, oder sogar, wenn SiteA eine vollqualifizierte Domäne sein muss, ist das in Ordnung.
Antwort1
Recht einfach:NEIN.
A DocumentRoot
muss ein einzelnes Verzeichnis auf dem Server sein und Platzhalter sind nicht zulässig.
DuMaiSie können das gewünschte Verhalten erreichen, indem Sie RewriteRule
die indiese Antwort, aber Ihre Abweichung kann abweichen.
Antwort2
Zumindest in 2.4 können Sie:
<Macro virty $name>
<VirtualHost $name:80>
ServerName $name.example.com
DocumentRoot "c:/development/Websites/$name/"
</VirtualHost>
</Macro>
Use virty SiteA
Use virty SiteB
Use virty SiteC