sizheng.org

花開未央

WordPress 301重定向插件 Redirection

朋友博客换了空间换了域名,但是又不想失去苦苦经营多年的旧博客的流量,于是想说那就设置301重定向吧。

首页和某些特定页面重定向到还好办,直接修改.htaccess就好了,就是那差不多上千篇的文章,如果要一篇篇手动指定是非常痛苦的。小雪一开始就想不然直接用python分别抓取新旧文章链接生成CSV文件再来做重定向好了,但上网搜索了一下发现很多人都推荐用Redirection插件来解决这个问题,于是,have a try咯~

在后台插件(Plug-in)中搜索“Redirection”安装上就好了,官方说明文档见这里

然后开始设置...朋友博客装的不是简体中文版的WordPress,这个插件不像小雪网上搜索到的显示为中文,不嗨森。几乎每位博主提到Redirection插件就只是给个设置页面首页截图,然后说一下它的优点,说一下这个是有中文简体翻译的设置很简单啦,就结束了 = =|||,你们是互相copy博文内容的吗?应该怎么设置小雪还是得慢慢看官方说明文档啊摔!

Redirection内置WordPress模式能够很便捷的将你所有文章301重定向,但是前提是要你启用了自定义链接(如下图)...朋友博客一直用默认链接,就是example.com/?p=12443 形式的,所以...只有先把所有文章固定链接换成自定义的任意一种才能用这个模式,我orz...

redirection  modules

没办法,看看别的设置咯ㄟ( ▔, ▔ )ㄏ

仔细阅读redirection官方文档发现,咦,它可以用正则表达式来匹配网址设置重定向诶!这个赞!

正则表达式...这个小雪平时用得不多,所以又还是去找文档来看:deerchao的《正则表达式30分钟入门教程》,使用在线测试器《Regex Tester 2.0 alpha》测试表达式。幸运的是,朋友在把blog内容转移至新空间时用了wordpress自带的导入导出工具,所以新文章网址和旧文章网址的ID是一样的,所以这个就表达式就很好写啦,咩哈哈哈哈~

所以目标是 oldexample.com/blog/?p=1234 这样形式的网址重定向为 newexample.com/?p=1234

最后小雪在redirection中添加了以下一条301转向规则搞掂!
/blog/?p=(d*)$ => example.com/?p=$1

Redirection 的主要特点:

支持WordPress、Apache重定向
404 error 监测 – 抓取404 errors页面,让你轻松重定向到新页面,而不致于丢失流量
支持RSS feed 404 errors 重定向
可自定义重定向路径,你可以重定向一个网址到另一页面、文件或网站。
支持整个网站或目录重定向
可创建基于URL、浏览器、推介网址、或注册页面的重定向
当一篇日志URL改变时,可以自动添加301重定向
Full regular expression support
Fully localized
可以输出重定向到CSV, XML或Apache .htaccess文件
支持输入Apache .htaccess 文件