
Apache の httpd.conf ファイルで複数のホストを設定する方法は知っていますが、それを動的にすることは可能ですか。
フォルダをこのようなディレクトリに配置するとします。
c:\
development\
websites\
SiteA
SiteB
SiteC
httpd.confファイルを次のように記述できますか?
<VirtualHost *:80>
ServerName *.example.com
DocumentRoot "c:/development/Websites/%1/"
</VirtualHost>
ここで%1
、またはその他の変数マーカーは、ユーザーが sitea.example.com などにアクセスする場合 SiteA になります。また、siteA が完全修飾ドメインである必要がある場合でも問題ありません。
答え1
非常に単純に:いいえ。
A はDocumentRoot
サーバー上の単一のディレクトリである必要があり、ワイルドカードは使用できません。
あなた5月RewriteRule
で述べた文を使用することで、あなたが求めている動作を得ることができる。この答えただし、状況によって異なります。
答え2
少なくとも 2.4 では次のことが可能です。
<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