wordpress固定连接修改为无分类后,Nginx rewrite做301重写的规则

  

例如:
wordpress后台原来设置的固定链接格式为/%category%/%post_id%.html,某网址URl则为http://www.abc.com/xyz/123.html
wordpress后台修改固定连接格式为/%post_id%.html后,上述URL网址为http://www.abc.com/123.html
对于搜索引擎的蜘蛛而言,如果此时访问http://www.abc.com/xyz/123.html则会出现404错误
为了避免出现上述固定连接修改导致的大量404错误而导致搜索引擎降权,需要在nginx添加301 rewrite重写规则,告诉蜘蛛域名从http://www.abc.com/xyz/123.html变为了http://www.abc.com/123.html

该重写规则该怎么写呢?
1、如果原来固定连接格式的最后部分为%post_id%.html

1
rewrite /(.*)/([0-9]+).html$  /$2.html permanent;

2、如果原来固定连接格式的最后部分为%postname%或者既有字符又有数字下划线等混合方式

1
rewrite /(.*)/(.*).html$  /$2.html permanent;

3、加在哪个位置?
一般nginx的wordpress重写规则中以下位置
no category,wordpress,wordpress nginx rewrite,wordpress no category 重写规则,无category的重写规则,wordpress固定连接修改为无分类后,Nginx rewrite做301重写的规则
4、如果你使用的是lnmp.org提供的lnmp一键安装包,则修改以下文件
/usr/local/nginx/conf/rewrite/wordpress.conf

报歉!评论已关闭.