HTACCESS:* .subdomain.domain.tld redir to subdomain.domain.tld / *

时间:2010-06-17 08:11:16

标签: .htaccess redirect subdomain

对于模糊的问题标题感到抱歉。

但无论如何,

我这里有一个子域,我希望传递通配符子域,并将正确的htaccess重定向到相当于通配符值的子文件夹(相对于服务器根目录),以便

*.subdomain.domain.tld will redirect to subdomain.domain.tld/*

其中* =通配符值

我希望你能得到我的问题。有人可以对此有所了解吗?我非常感激=)

2 个答案:

答案 0 :(得分:1)

RewriteRule ^(.*).subdomain.domain.tld$ http://subdomain.domain.tld/$1 [R]
这应该可以解决问题。

[R]告诉服务器这是重定向。 您也可以使用可选代码,例如

[R=301] # Moved permanently
[R=302] # Moved temporarily
[R=403] # Forbidden
[R=404] # Not Found
[R=410] # Gone

答案 1 :(得分:1)

您必须使用RewriteCond读取子域名,然后您可以使用RewriteRule执行重定向,而子域名保存在%1中。

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(.*)\.subdomain\.domain\.tld$ [NC]
RewriteRule .* http://subdomain.domain.tld/%1 [L,R=301]

如果您想将*.subdomain.domain.tld/file.html重定向到subdomain.domain.tld/*/file.html,可以将RewriteRule替换为:

RewriteRule ^(.*)$ http://subdomain.domain.tld/%1/$1 [L,R=301]