.htaccess RewriteRule subsubdomain.subdomain.domain.tld到subdomain.domain.tld / subsubdomain

时间:2013-09-16 21:06:36

标签: .htaccess redirect mod-rewrite dns subdomain

是否可以使用.htaccess rewrite-rule将子子域重定向到子域,子域为新文件夹?

例如......当我去2013.archive.example.com我想最终进入archive.example.com/2013 ..

已经尝试了一些东西,目前.htaccess是:

RewriteRule On
RewriteCond %{HTTP_HOST} ^(.*)\.archive\.example\.com$
RewriteRule ^(.*)$ archive.example.com/%1/$1 [L]

不幸的是它不起作用。有什么建议吗?

3 个答案:

答案 0 :(得分:1)

将其更改为但目前正在使用:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(.*)\.archive\.example\.com$ [NC]
RewriteRule ^(.*)$ %1/$1 [L]

并且正在按照我想要的方式工作:)

答案 1 :(得分:0)

对于外部重定向:(浏览器中的网址更改)

您可以在DOCUMENT_ROOT/.htaccess

中使用此规则
RewriteCond %{HTTP_HOST} ^([^.]+)\.(archive\.example\.com)$ [NC]
RewriteRule ^ http://%2/%1%{REQUEST_URI} [L,R=301]

如果DOCUMENT_ROOTanything.archive.example.com的{​​{1}}相同,则会有效。

对于内部转发:(浏览器中无网址更改)

您可以在archive.example.com

中使用此规则
DOCUMENT_ROOT/.htaccess

答案 2 :(得分:0)

如果他们共享同一个根,那么您的规则目标中不需要archive.example.com部分:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(.*)\.archive\.example\.com$ [NC]
RewriteRule ^(.*)$ /%1/$1 [L]