将子域和路径重定向到具有相同路径的主域
Redirect subdomain and path to main domain with same path
我最近停止为我的博客使用子域,我需要将所有使用该域的 link 转发到相同的 link 路径,但在我的主域上。
例如:
- blog.example.com/blog/sales/blog-title
需要重定向到:
- www.example.com/blog/sales/blog-title
我可以重定向子域本身,这样
-blog.example.com/
去
- www.example.com/blog
但是当我尝试重定向页面时,它不会重定向也不会加载。任何人都可以阐明它吗?我目前在我的 htaccess 中有这个用于我的主要重定向:
RewriteCond %{HTTP_HOST} ^blog\.example\.com [NC]
RewriteRule (.*) http://www.example.com/blog/ [L,R=301]
我正在进行其他子域重定向,但 none 通配符重定向。
在您的示例中,您希望从
重定向
blog.example.com/blog/sales/blog-title
到
www.example.com/blog/sales/blog-title
但是在您的规则中,您在替换部分插入了另一个子目录 blog
,这给出了
www.example.com/blog/blog/sales/blog-title
相反,结果是错误 404。
要使用完全相同的请求路径从一个域重定向到另一个域,请使用
RewriteCond %{HTTP_HOST} ^blog\.example\.com$ [NC]
RewriteRule ^ http://www.example.com%{REQUEST_URI} [L,R]
当它正常工作时,您可以将 R
替换为 R=301
。切勿使用 R=301
.
进行测试
我最近停止为我的博客使用子域,我需要将所有使用该域的 link 转发到相同的 link 路径,但在我的主域上。
例如:
- blog.example.com/blog/sales/blog-title
需要重定向到:
- www.example.com/blog/sales/blog-title
我可以重定向子域本身,这样
-blog.example.com/
去
- www.example.com/blog
但是当我尝试重定向页面时,它不会重定向也不会加载。任何人都可以阐明它吗?我目前在我的 htaccess 中有这个用于我的主要重定向:
RewriteCond %{HTTP_HOST} ^blog\.example\.com [NC]
RewriteRule (.*) http://www.example.com/blog/ [L,R=301]
我正在进行其他子域重定向,但 none 通配符重定向。
在您的示例中,您希望从
重定向blog.example.com/blog/sales/blog-title
到
www.example.com/blog/sales/blog-title
但是在您的规则中,您在替换部分插入了另一个子目录 blog
,这给出了
www.example.com/blog/blog/sales/blog-title
相反,结果是错误 404。
要使用完全相同的请求路径从一个域重定向到另一个域,请使用
RewriteCond %{HTTP_HOST} ^blog\.example\.com$ [NC]
RewriteRule ^ http://www.example.com%{REQUEST_URI} [L,R]
当它正常工作时,您可以将 R
替换为 R=301
。切勿使用 R=301
.