[英]Apache2 Dynamic vHost with multiple ServerAlias
我正在嘗試建立一個動態的vHost,但遇到了一些麻煩。 它不允許我設置多個ServerAlias。
<VirtualHost *:80>
ServerAlias *.com
ServerAdmin michael.ian.curry@gmail.com
VirtualDocumentRoot /var/www/%1/production/html
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
LogLevel warn
</VirtualHost>
以上vHost僅適用於' .com'我需要它才能用於'www。 .com'和'* .com'我認為設置ServerAlias會修復它,但它無法正常工作。
ServerAlias *.com www.*.com
如果您有任何見解,請回復
--MichaelCurry
==編輯1 ==
示例redcrusher.com和www.redcrusher.com
==編輯2 ==
下面的代碼也不起作用
ServerAlias www.*.com *.com
弄清楚了!
'www。*。com'必須在'* .com'之前執行這是因為ServerAlias正在設置一個動態域,並且必須在存在“較小”別名之前存在。
示例:'www。*。com','dev。*。com','asdf。*。com'THEN'* .com'
vHost文件[production.conf]:
<VirtualHost *:80>
ServerAlias www.*.com
VirtualDocumentRoot /var/www/%2/production/html
ServerAdmin michael.ian.curry@gmail.com
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
LogLevel warn
</VirtualHost>
<VirtualHost *:80>
ServerAlias *.com
VirtualDocumentRoot /var/www/%1/production/html
ServerAdmin michael.ian.curry@gmail.com
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
LogLevel warn
</VirtualHost>
我希望這可以幫助其他任何有這個問題的人!
--MichaelCurry
你必須這樣使用
ServerAlias www.domain.com domain.com
ServerAlias *.domain.com
如果你想用那種方式你必須遵循秩序
ServerAlias www.*.com *.com
問題是
VirtualDocumentRoot /var/www/%1/production/html
您使用動態VirtualDocumentRoot意味着
對於redcrusher.com,VirtualDocumentRoot是
/var/www/redcrusher/production/html
對於www.redcrusher.com,VirtualDocumentRoot是
/var/www/www.redcrusher/production/html
我認為拆分ServerAlias分三部分來解決
ServerAlias www.*.com
VirtualDocumentRoot /var/www/%1/production/html/
ServerAlias *.*.com
VirtualDocumentRoot /var/www/%2/production/html/%1
ServerAlias *.com
VirtualDocumentRoot /var/www/%1/production/html
我認為應該工作
VirtualDocumentRoot:
redcrusher.com
/var/www/redcrusher/production/html
www.redcrusher.com
/var/www/redcrusher/production/html/
sub.redcrusher.com
/var/www/redcrusher/production/html/sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.