如何通过htaccess使用301重定向将多个旧网址重定向到新网址

时间:2018-10-08 14:54:49

标签: .htaccess

我最近从我的网站上更改了一些URL,以使其对SEO更友好。我有旧的网址,我想链接到新的网址。旧的网址不再可用,但我希望旧的网址重定向到新的网址。

我下面的当前301重定向代码用于http://到https://www,这是我需要的。

RewriteEngine on
RewriteCond %{HTTP_HOST} ^mywebsite.com [NC]
RewriteRule ^(.*)$ https://www.mywebsite.com/$1 [L,R=301,NC]

如何做到这一点,以便我也可以从旧网址重定向到新网址。 301重定向是否可能?

旧的网址示例:
www.mywebsite.com/book-stories.html
www.mywebsite.com/book-journals.html

新的网址示例:
www.mywebsite.com/stories.html
www.mywebsite.com/journals.html

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

如果只有少数几个静态重定向,则可以像执行操作一样在其后附加RewriteRules

RewriteRule ^book-stories.html$ stories.html [R=301]
RewriteRule ^book-journals.html$ journals.html [R=301]

如果它们都有固定的模式,则可以利用它来减少规则数量。

RewriteRule ^book-([a-z0-9.-]+).html$ $1.html [R=301]

如果您有许多要更新的规则,则可以查看indexed maps甚至database-based RewriteMaps

答案 1 :(得分:0)

我尝试了上面的代码,但是没有用,老实说我可能做错了。我确实对其进行了进一步研究,并尝试了另一个301重定向

Redirect 301 book-stories.html https://www.mywebsite.com/stories.html
Redirect 301 book-journals.html https://www.mywebsite.com/journals.html

对我有用。希望这会对遇到此问题的其他人有所帮助。