完美解决wordpress的301重定向

页面永久性移走(301重定向)是一种非常重要的“自动转向”技术。
1822-301-redirect-thumb

关于重定向

301代表永久性转移(Permanently Moved),301重定向是网页更改地址后对搜索引擎友好的最好方法,只要不是暂时搬移的情况,都建议使用301来做转址。 同样,在使用301永久性重定向命令让多个域名指向网站主域时,亦不会对网站的排名产生任何负面影响。

关于重定向实现的几种方法

关于重定向实现的几种方法,月光博客上有详细讲解,不再重复劳动,需要的朋友可以前去认真学习!文章地址:http://www.williamlong.info/archives/484.html

wordpress中实现301跳转的方法

google的站长管理工具,在网站诊断方面,可以有效协助我们避免一些SEO方面的错误;比如页面抓取错误,这是我在做301重定向处理前的抓取错误数:

1822-301-redirect-01

因为博客地址在使用过程中,随意更改过几次,一直都未注意过这方面的问题,直至用了google的站长管理工具才发现严重性。
在wordpress实现301重定向的方法,有很多技术类、seo类博客均有提到,我仅整理下我的方法,以作备用;将以下代码断放置于wordpress根目录下的wp-blog-header.php里原代码前即可。

$URIRedirect = strtolower( $_SERVER['REQUEST_URI'] );
if ( preg_match( '/(\/[0-9]{0,4})(\/[0-9]{0,2})(\/[0-9]{0,2})(\/([a-z0-9+\$_-]\.?)+)*\/?/', $URIRedirect, $matchs ) ) {
	header('HTTP/1.1 301 Moved Permanently');
	header('Location:http://jokerliang.com'.$matchs[4].'.html');
	exit();
}

这段代码主要是将固定链接格式“/%year%/%monthnum%/%day%/%postname%/”转成“/%postname%.html”。
这样处理后,经过一段时间再查google抓取错误结果,如图:

1822-301-redirect-02

—————————2018-05-14—————————–
针对nginx环境,实现上面所述跳转的具体实现:
在conf中添加下面这句即可

rewrite "^/([0-9]{4})/([0-9]{2})/([0-9]{2})/([a-z0-9+_-]{0,})/?$" /$4.html permanent;

参考:
http://seanlook.com/2015/05/17/nginx-location-rewrite/

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注