昨天有个做电商的朋友找我,说最近流量掉得厉害,问是不是被百度针对了。
我让他把后台日志打开,一看傻眼了。
他的网站http和https版本并存,www和非www也并存。
这就好比你有两把钥匙,都能开门,但客人进错门了,你就不知道谁是你真正的客户。
这就是典型的网站有没有做301的问题。
很多站长觉得,搜索引擎那么聪明,自动识别一下不就行了吗?
天真。
搜索引擎也是人写的代码,它需要明确的指令。
如果你不给它指令,它就得猜。
猜错了,权重就分散了。
我拿自己最近的一个测试站举例。
刚开始没做301,收录页面乱七八糟,有的带www,有的不带。
后来我花了一下午时间,把全站做了301重定向。
结果呢?
一周内,收录页面从800多页,稳定到了600多页,而且都是高质量的canonical页面。
流量虽然没有爆发式增长,但转化率提升了15%。
为什么?
因为用户访问的是统一地址,品牌感强了,信任度也高了。
具体怎么做?
别去网上找那些复杂的教程,直接看下面这几步。
第一步,确定你的主域名。
是www.example.com,还是example.com?
选一个,剩下的全部抛弃。
我建议你选带www的,因为配置CNAME记录更方便,特别是用CDN的时候。
第二步,检查服务器环境。
你是用的Nginx还是Apache?
这两个配置方法不一样,别搞混了。
如果是Nginx,在配置文件里加一段代码。
比如:
server {
listen 80;
server_name example.com;
return 301 http://www.example.com$request_uri;
}
这段代码的意思很简单,就是把不带www的请求,强制跳转到带www的页面。
注意,这里有个坑。
很多人只写了域名,忘了写$request_uri。
这就导致用户访问你子页面的时候,全部跳到了首页。
这就很尴尬了,用户体验极差,百度也会觉得你网站有问题。
所以,一定要带上$request_uri。
如果是Apache服务器,那就更简单了。
在.htaccess文件里加几行代码就行。
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
这里要注意大小写。
RewriteCond里的域名,点号要转义。
很多人忘记加反斜杠,结果配置失效,怎么试都不对。
这时候别慌,去在线检测工具查一下。
比如用HTTP状态码查询工具,输入你的网址。
如果返回的是301,那就成功了。
如果是200,说明没生效。
如果是302,那就麻烦了。
302是临时跳转,权重不会传递。
搜索引擎会认为这个页面随时会变,不敢把权重给你。
所以,一定要确保是301,永久重定向。
做完这些,别急着高兴。
去百度站长平台提交一下改版规则。
虽然301是通用标准,但国内环境特殊,多走一步保险。
提交后,观察一周。
看收录有没有变化,看流量有没有波动。
如果发现流量突然跌零,别慌,可能是缓存问题。
清理一下浏览器缓存,或者等搜索引擎重新抓取。
一般来说,301生效需要几天时间。
这时候要有耐心。
我见过太多人,配完301第二天没效果,就赶紧改回去。
结果折腾半个月,权重反而更低了。
因为搜索引擎已经记录了你的错误配置,现在又要重新学习。
所以,一旦决定做301,就坚持到底。
还有个小细节。
内链也要改。
如果你网站内部还有链接指向旧地址,记得批量替换。
不然,用户点击内部链接,还是会遇到跳转。
虽然301能解决,但多一次跳转,就多一次加载时间。
对于移动端用户来说,这0.5秒的延迟,可能就流失一个客户。
所以,细节决定成败。
网站有没有做301,看似是个技术问题,实则是用户体验问题。
也是搜索引擎友好度的问题。
别嫌麻烦,这一步做好了,后面的路会顺畅很多。
如果你还在纠结要不要做,我的建议是:
做。
现在做,比以后做容易一万倍。
等网站权重起来再想改,那就是牵一发而动全身。
到时候后悔都来不及。
希望这篇干货能帮到你。
如果觉得有用,记得收藏起来,配置的时候对照着查。
毕竟,这种基础工作,做一次就够了。