我正在尝试build立一个dynamicvHost,但遇到了一些麻烦。 它不会允许我设置多个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
/var/www/redcrusher/production/html/
sub.redcrusher.com
/var/www/redcrusher/production/html/sub