设置htaccess文件

时间:2012-05-21 19:30:24

标签: apache .htaccess http-status-code-301

我正在启动一个网站,并希望设置一个htaccess文件,以便将旧网站的旧链接重定向到新网站。我希望它尽可能地有用,所以我想将旧网站的特定链接重定向到新网站上具有类似内容的网页。

我想要实现的是,如果有人访问www.oldsite / oldlink.html,他们将被重定向到www.newsite.com/newlink.html,但如果他们转到任何其他页面,他们将被重定向到www.newsite.com/。

我知道我可以在我的htaccess文件中使用这样的代码完成第一部分(将单个页面重定向到另一个页面):

Redirect 301 /oldlink.html
http://www.newsite.com/newlink.html/

我的问题围绕着想要为我在这里没有特别提及的任何链接创建“全能”重定向,因为我不知道它们存在,等等。我知道我可以这样做:

Redirect 301 / 
http://www.newsite.com/

但这会覆盖我上面创建的oldlink.html重定向吗?

1 个答案:

答案 0 :(得分:2)

你可以用这个:

RewriteEngine on
RewriteRule oldlink.html http://www.newsite.com/newlink.html [NC,R=301,L] 
RewriteRule (.*) http://www.newdomain.com/ [NC,R=301,L] 

(NC =无案例/不区分大小写; L =最后规则)

如果第一个RewriteRule匹配,则不使用第二个。您可以根据需要添加任意数量的规则。 您还可以使用

http://www.oldsite.com/somelink.html重定向到http://newsite.com/somelink.html(仅将“oldsite”更改为“newsite”,而不是页面名称)
RewriteRule ^(.*)\.html$ http://www.newsite.com/$1.html [R=301,NC,L]