我正在移动站点,我想对除某些 URL 之外的所有 URL 进行 301 重定向,
像这样:
oldsite.com/*
->www.newsite.com
oldsite.com/specific/article/to/redirect
->www.newsite.com/fancy/blah
所以有一些东西我想重定向到特定的页面,但其余的都应该转到 root,如何在 .htaccess 中完成?
我正在移动站点,我想对除某些 URL 之外的所有 URL 进行 301 重定向,
像这样:
oldsite.com/*
->www.newsite.com
oldsite.com/specific/article/to/redirect
->www.newsite.com/fancy/blah
所以有一些东西我想重定向到特定的页面,但其余的都应该转到 root,如何在 .htaccess 中完成?
如果您只有一个需要豁免的 URL,则可以使用 RedirectMatch。
RedirectMatch permanent !/specific/article/to/redirect http://www.newsite.com
对于多个 URL,您最好使用 mod_rewrite 和一个列出要豁免的 URL的外部重写映射。
将以下内容添加到.htaccess
旧站点根目录中的文件中。
#place your specific redirects first
Redirect 301 /specific/article/to/redirect http://www.newsite.com/fancy/blah
RewriteEngine on
#then your general redirect all to new site last
RewriteRule ^ http://www.newsite.com%{REQUEST_URI} [L,R=301]