WordPress 301重定向插件 Redirection

Posted by Y Cheung on Sun, Feb 23, 2014

朋友博客换了空间换了域名,但是又不想失去苦苦经营多年的旧博客的流量,于是想说那就设置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 文件

COMMENTS (14)

Louis Han · 2014-02-23T17:29:00+08:00

说不定以后会用得到


Otaru · 2014-02-23T17:54:00+08:00

大讚!人正技術又好!大推一個><


darkhandz · 2014-07-24T17:17:00+08:00

不是一般的技术大牛!膜拜……

小雪 · 2014-07-24T20:53:00+08:00

黑爪大大好久不见,一来就黑我吖

zohar zohar · 2014-11-04T01:09:00+08:00

重定向的话,在header.php加几行代码就可以啦

小雪 · 2014-11-04T09:34:00+08:00

喔?header.php是通用文件,你要怎么匹配到每一页都转向到相应的不同的指定的URL呢XD

zohar zohar · 2014-11-04T21:28:00+08:00

哦,具体我不知道哦,我是挂在新浪的SAE,控制面板就有301配置。博主你的服务器在国外打开好慢哦

小雪 · 2014-11-04T21:47:00+08:00

嗯,要換服務器了,我自己開起來也不是很快,沒辦法,除非放在國內或者用CDN加速,不然就這麼著吧~

zohar zohar · 2014-11-04T21:33:00+08:00

哦,了解咯,博主是要更改域名后还要更改url伪静态。 繁体字,“搞掂”(→_→)博主香港咩


Steven Huang · 2014-12-13T21:23:00+08:00

也可以用nginx匹配redirect


akmumu · 2015-07-22T12:09:00+08:00

成功了,但是我看源码中包含中文版,但是显示英文,不知道咋改

小雪 · 2016-06-01T13:39:00+08:00

额,没关注过不同语言版本的问题,英文也一样可以用嘛,噗噗~


广州律师 · 2016-06-01T12:39:00+08:00

你好,请问我的站点要怎么写表达式呢? 我固定链接原来设置是:www.jtsg.org//%year%-%monthnum%-%day%/%post_id%.html,能否修改成www.jtsg.org/%post_id%.html呢? 请问如何写表达式呢

小雪 · 2016-06-01T13:37:00+08:00

仔细观察你原来的链接格式与现在的链接格式,找寻规律后,查看我文内提供的文档链接撰写表达式,然后去测试这个表达式