qi70博客最近遇到网站路径需要改变的问题, 如果处理不好将会对seo产生严重的影响,对于wordpress的伪静态和各类教程我去看了,大部分都是无效的,或者写的乱七八糟的东西。下面我将会分享关于linux系统nginx网站伪静态写入正则匹配的301重定向的方法还有方案。
首先是,事情发生的原因,这个我需要说下,一个wordpress网站产生了一点问题,主要是wordpress网站固定链接问题,我在建站时采用了/%category%/%post_id%.html这种链接方式,我想给大家说下,wordpress的固定链接最好选用/%post_id%.html这种因为这种在伪静态时才不会导致伪静态出现重复链接的问题,但是如果选用第一个规则出现了问题,怎么处理相关的问题呢?
如果在运营网站一段时间,网站已经有大量收录和内容之后,去修改这个东西,那么会产生很多死链,那么我们需要用301和重定向的方法,还有网站改版里面的规则改版进行网站301重定向,这样才能将相关的损失降到最小。那么我们应该如何处理。
一、如何做nginx伪静态(网站如果是nginx的服务器可以用伪静态规则,下面所述的也都是linux服务器nginx相关的处理方式,其他服务器类型需要其他方案解决。)
(1)一般网站使用的都是宝塔linux的面板,那么我们应该怎么处理宝塔的面板的伪静态跳转。
比如我们需要跳转的url对中的一对是:www.qi70.com/info/5279.html
(仅做举例使用并非本网站。)
那么我们如何处理相关的伪静态规则呢?规则很明显的就是把info/某些数字.html转换成/某些数字.html。如果想要根据规则匹配和301重定向到这些url对,那么就需要采用伪静态的nginx的正则表达式进行301重定向的表达和制作。
①首先我们找到宝塔面板下面的网站伪静态设置位置。如下图:
(2)写入伪静态规则,那么应该怎么写入伪静态规则就涉及到正则表达式的内容了,一般学习过前端、后端和服务器的人都知道有正则表达式来做重定向的问题。下文中有相关的正则表达式的标准和举例,(注:对于last有些要改成permanent),上图有相关的代码写法。下面也会注明相关的写法。
比如上举例的内容如果做nginx伪静态的301重定向的代码应该是:
rewrite ^/info/([0-9]+).html$ /$1.html permanent;
查询结果,如下。这种正则匹配就可以实现301重定向。
三、下面需要提交网站改版规则给百度参考,如何提交还是要涉及到一些正则匹配的问题,和上面301重定向的匹配是不一样的,同样是正则匹配。这个匹配和原来的nginx伪静态的匹配不是一样的,具体的匹配规则可以看百度网站改版规则匹配官方文件。看下面文件也可以,那么如何写匹配规则的。
(1)网站匹配规则写法比如一里面举的例子的写法,这种规则就可以了。一般可以提交就基本是写对了
(2)依次填入相关的规则和相关的内容即可
这样就实现了NGINX的伪静态和301规则重定向。