正在读取数据,页面载入中,请稍后...

机智的处理网站死链,让网站死链变成活链

网站死链如何解决。网上的答案,99%的站长都会告诉你,上平台提交死链地图,然后就苦等,一月、两月、三月、甚至是半年,那个死链都还存在,真的是皮得不能再皮了。还有1%的站长,连提交都不提交,那就是不管它也不处理。下面,小千教你一个,把死链变成活链的方法,只要一个简单的伪静态规则,把网站所有的死链,做301重定向变成活链。

出现死链的原因

很多站长,都想建站走捷径,比如,买老域名,网站改版,链接改版等,都会出现网站死链。虽然老域名,有利于优化,有利于收录,但是,有一定的风险,那就是好的域名,别人不会卖,不好的域名,在市场上,就有很多,便宜的东西,除了便宜,就全是毛病。拦截、被墙、被拔毛、被K站、被惩罚、在惩罚中...等等,这些,都是买老域名的必修课。

死链带来的困扰

机智的处理网站死链,让网站死链变成活链 - 全民博客

真的是,很多的站长,都有强迫症,网站有死链,真的是吃不好、睡不着的,吃饭时在想,上班时在想,当睡觉的时候,还在想,怎样才能解决网站死链问题。不会代码、不懂技术、遇到问题,就知道问百度的,百度的人都告诉你,要是能把你电脑整中毒了,也是一件让人开心的事情,总的来说,这种问题,这种答案,就算你搜到电脑中毒了,都不带有找到解决办法的。大多数原因,是别人,不愿分享自己苦研的劳动成果。就瞎几把的告诉你,上站长平台提交死链。

上站长平台提交

额...这个是99%的站长,都会选择这么做,还有1%的就任其不管。作为一个专业的SEO人员,我们都知道,网站的死链,基本上没流量、没排名、没人气、没点击、只收录、没用的,最后,就是一年都不会更新。还有一种情况,那就是有排名、有流量、有权重的链接,当服务器不稳定,或者是网站打不开的时候,第二天收录就没了,权重就掉了,关键词也掉了。

所以,大家提交的死链,如果站长有强迫症,那就是希望快点取消收录,但是,这种收录又没用的链接,没排名的链接,真的是几年都不会更新的。如果你想,网站改版,想马上把快照更改过来,那是不可能的,也是做不到的,你能做的,只有上站长平台提交死链地图。说句实话,有点耿直,要是知道死链,还能整出地图,还特么来提交,真的是脑子进水了。

把死链做成活链

提交死链地图,你自己都不用的吧,说出来,真的是,让人有点发笑。对的,没错,今天小千,就要出一个,这种比较反常的教程,做法也是非常的,让人意想不到的,让所有的站长知道,玩技术的,和每天只知道发文,日赚百万,分享网络传销技术和网赚项目的站长,有那么一点点的不一样。好了,废话不多说了,直接开始上教程,直接开始上代码吧。

教程开始

有句话,我想说。网站又被降权了,不怕网站不收录,就怕站长会技术。做网站,网站上线了,就不要改模板了,只要老实的发文就好了,不要整天想着改模板,今天改一点,明天改一点,然后过几天又改一点,这种,不是被修改,就是正在被修改的路上,有这种强迫症的站长,网站真的是很难起来的,虽然说能提高用户体验,但搜索引擎都受不了你。

新建一个PHP文件,命名为 www301.php 然后代码如下;

<?php 
error_reporting(0);
header('Content-type:text/html;charset=utf-8');
header('HTTP/1.1 301 Moved Permanently');//直接设置http状态是301
if (strpos($_SERVER['REQUEST_URI'],'snh101_')) {
	//$_SERVER['REQUEST_URI'] = 'http://www.nikucms.com/snh101_21511_183387.shtml';//比如这个是死链
	$arr = explode('snh101_', $_SERVER['REQUEST_URI']);//获取到的是 21511_183387.shtml
	$aaa = explode('_', $arr[1]);//然后再进行截取
	//给得到的结果进行赋值,赋值到你想跳转到的链接
	$mkcmsid = '/miku/v.php?id='.$aaa[0];// $aaa[0] 得到的是 21511 
	//$mkcmsid = str_replace('_', '', "$arr[1]");
	//$mkcmsid = str_replace('_','', $mkcmsid);
} elseif (strpos($_SERVER['REQUEST_URI'],'snh_')) {
	//$_SERVER['REQUEST_URI'] = 'http://www.nikucms.com/snh_24402.shtml';//比如这个是死链
	$arr = explode('snh_', $_SERVER['REQUEST_URI']);//获取到的是 24402.shtml
	$aaa = explode('.shtml', $arr[1]);//然后继续对结果进行截取
	//给得到的结果进行赋值,赋值到你想跳转到的链接
	$mkcmsid = '/miku/v.php?id='.$aaa[0];//最后 $aaa[0] 得到的是 24402 
	//$mkcmsid = str_replace('_', '', "$arr[1]");
} else {
	//$_SERVER['REQUEST_URI'] = 'http://www.nikucms.com/list/1/20.shtml';//比如这个是死链
	//给得到的结果进行赋值,赋值到你想跳转到的链接
	$mkcmsid = '/miku/index.php';
	//$mkcmsid = str_replace('_', '', "$arr[1]");
}
//echo $mkcmsid;
header('Location: '.$mkcmsid.'');//直接进行301跳转
?>

全部都给解释了,每一句代码都给解释了,你还要怎样,你到底还要怎样嘛。感兴趣的小伙伴,可以看一下这个例子,然后学会举一反三。这是一个简单的例子,我只能举例,你要学会举一反三,如果你不会代码,或者是看不懂的,不能解决你的网站死链问题,你私聊小千QQ226177621,小千给你出新的代码,来包烟,小千帮你解决得完完美美的。

特别提醒

虽然说,这个获取当前链接,可以对链接进行转向,但是,每个网站和每个网站的链接结构,都是不一样的,所以,这个代码仅供参考,可能,也许,并不能解决,你网站的所有死链问题。因为,很多的站长,做网站的时候,喜欢把链接保存在不同目录,那么,这种时候,就需要无限个 elseif 进行判断了,还是那句话,如果,你不会代码,可能有点难。

如果,你真的看不懂,或者是学不会的,可以私聊小千,小千提供技术支持,能帮你把网站死链,变成活链,能把死链全部重定向。刚才说了,如果网站的不同目录很多,那么一个伪静态规则解决不了,那就使用多个,多个解决不了,那就再增加一倍,没有什么,是伪静态规则解决不了问题的,如果有,那就用多个伪静态规则就能解决了。

Apache伪静态规则

RewriteEngine on
RewriteRule ^/(.*).shtml$ /www301.php?url=$1

注意文件名,和文件所在位置,当然,如果你不想放在根目录,那就再加一个目录名就行了。

Nginx伪静态规则

rewrite ^/(.*).shtml$ /www301.php?url=$1;

注意文件名,和文件所在位置,当然,如果你不想放在根目录,那就再加一个目录名就行了。

温馨提示

啊...不生效、不管用、不能用、用不了,我就想问,你文件上传到哪了,伪静态规则写了吗,服务器重启了吗,路径对了吗,然后判断的来源对了吗,如果不能解决问题,那就是你自己的问题。如果你复制直接用,我能明确的告诉你,肯定不管用,这是一个简单的例子,但是需要会点技术、会点代码,能看懂,会修改的,才有用,你能懂我的意思吧。

就一段三流代码

听到有人吐槽,对的,没错,这就是一段既简单、又简单、既没有技术含量,又毫无技术含量的一段三流代码。但是,我想反问,在看的各位站长,为什么你不知道这么写,为什么你不知道这么用,为什么别人写出来以后,然后分享给你,你还要吐槽,这是一段三流代码,人要学会知足,人要学会感恩,不要总是想着报复社会。

写在最后,作为站长,大多数的站长,或者是专业搞网站优化的,都会告诉你上站长平台做死链提交即可,但是,我们提交以后,那些站长平台,真的是一年都不带处理的,这就有点尴尬了。作为一个技术仔,能用代码解决,能用技术解决,就不要瞎哔哔,就不要麻烦别人,能用技术解决就不要瞎哔哔。

看小千一文,把死链变成活链,以后,再也不用担心网站有死链了,也不用上站长平台提交了。一个把网站死链变成活链的方法,只需要一个简单的伪静态规则,就能把网站所有的死链,做301重定向变成活链,让你的网站不再错过那些流量。

本文结束

评论专区

发表评论

评论列表(无评论)