对于模糊的问题标题感到抱歉。
但无论如何,
我这里有一个子域,我希望传递通配符子域,并将正确的htaccess重定向到相当于通配符值的子文件夹(相对于服务器根目录),以便
*.subdomain.domain.tld will redirect to subdomain.domain.tld/*
其中* =通配符值
我希望你能得到我的问题。有人可以对此有所了解吗?我非常感激=)
答案 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]