.htaccess 将不存在的子域重定向到www子域,但不重定向到现有子域
我想将不存在的域重定向到www子域,但同时不重定向现有子域。例如:.htaccess 将不存在的子域重定向到www子域,但不重定向到现有子域,.htaccess,redirect,rewrite,.htaccess,Redirect,Rewrite,我想将不存在的域重定向到www子域,但同时不重定向现有子域。例如: domain.com --> www.domain.com existingsubdomain.domain.com --> existingsubdomain.domain.com nonexistingsubdomain.domain.com --> www.domain.com 到目前为止,我只能找到重定向一切(甚至是现有的)的例子,我需要的是一切(到www)+例外(现有子域) 我正在使用apache.
domain.com --> www.domain.com
existingsubdomain.domain.com --> existingsubdomain.domain.com
nonexistingsubdomain.domain.com --> www.domain.com
到目前为止,我只能找到重定向一切(甚至是现有的)的例子,我需要的是一切(到www)+例外(现有子域)
我正在使用apache.htaccess
,这样的规则会是什么样子
我发现了一个可以这样做的例子:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteRule ^(.*)$ http:// www.%{HTTP_HOST}/$1 [L,R=301]
nonexistingsubdomain.domain.com --> www.nonexistingsubdomain.domain.com
但它只能做到这一点:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteRule ^(.*)$ http:// www.%{HTTP_HOST}/$1 [L,R=301]
nonexistingsubdomain.domain.com --> www.nonexistingsubdomain.domain.com
怎么样
ErrorDocument 404 http://www.domain.com
?这取决于您在服务器端构建子域的方式。例如,您将为每个子域设置一个
VirtualHost
,并使用*.domain.com
设置一个全面回退,然后在需要时重定向www.domain.com
。但正如前面所说,这在很大程度上取决于您在服务器上如何构造子域。顺便说一句,如果您提出问题,请确保检查预览中的格式,以使其可读(例如,添加所需的换行符,以突出显示代码块)