今天一位站长朋友咨询301问题,本来以为很简单的,没注意到其中的细节,从而导致冬镜花费了一点时间才解决了。现在给大家分享出来,希望以后的站长朋友再遇到此类问题,就可以避免踩坑。
301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。以上是百度百科的解释,其实简单一点说就是把A地址跳转到B地址。
① 可以把一个域名的权重转移到另一个域名上,从而增加后者域名的权重,这样就可以聚集网站权重了;
② 可以有效避免掉网站错误链接(死链)导致网站损失大量的流量以及收录;
今天冬镜就为大家一一讲解301转向中会遇到的情况,并给予相对应的解决方案,主要以Apache来演示。
解决这个方法可以直接在伪静态进行配置,一种是可以直接在宝塔面板,域名管理里面的伪静态;另一种就是网站根目录的.htaccess文件,添加如下代码即可:
RewriteEngine On
RewriteRule ^ss/(.*) \.html$ /t_$1 [R=301,L]
简单解释上面的一句就是开启重写的意思,想要伪静态生效就必须加上这一句话。第二句话的意思就是访问 域名/ss/34.html就会自动跳转到 域名/t_3 这个地址上。
其中^表示开始,或者说从根目录,也代表当前的域名的意思,反正你理解是那一回事就行。(.*)这个表示的是匹配所有。$1表示这是一个变量,不固定的。R=301 这个不需要多解释,就是声明这个转向是301的意思。L是last,即最后一个rewrite规则,如果请求被此规则命中,将不会继续再向下匹配其他规则,切忌如果后面还有其它伪静态规则,不要用L终止,不然后面的伪静态都不会生效了。
这里要提醒一下大家在apache中伪静态规则一定要注意特殊符号,特殊符号一般是不能直接写的,不然你会发现伪静态不生效,比如? . 之类的。
相对来说这个方案比较简单,比较适合很多小白。在宝塔后台网站管理里面,域名设置里面有一个重定向功能,重定向类型选择路径,重定向的路径就是你访问需要跳转的路径,目标url就是跳转之后的地址,说人话就是用户在浏览器最终看到的地址。
用php来进行转向需要一点技术功底,另外一点就是还需要看网站源码是否支持php语言,这里冬镜只是给大家提一下,可以通过代码的方式解决,当然js也是可以实现301,此方法不建议小白去操作,具体的代码就不给大家放出来了,毕竟某些细节性的还是要根据自身网站来就行适当的修改的。
文章转载自微信公众号:冬镜seo
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/182060.html