做网站的时候网页中,最好不要插入框架,但是对于很多被转码的网站来说,js被删除干净,head部分被有选择的删除,我们只能选择这种方法了。但是我们稍微处理下这个框架,让蜘蛛不去抓取他。就从技术上规避了风险。
今天说的这个方法,说实话,不通用,因为每个网站的链接都不一样。所以很多站长要根据自己链接的伪静态规则来修改,今天说的这个方法,大鸟这里只选一种来说下方法。各位站长如果看到过后,修改下对应的规则就可以解决了。
我们,比如说小说站,如果是什么图片站被百度转码,或者其他的站点,就参考这种方法来搞吧。当然方法是绝对管用的目前来说。
我们网站一般有首页,列表页,内容页,当然小说站可以有2个列表页。大鸟这里的链接规则如下。
http://m.xxxx.com/info_7792.html(列表页)
http://m.xxxx.com/xs/1/7792/(列表页)
http://m.xxxx.com/xs/7/7792/3141769.html(内容页)
一般都是列表页被百度转码,但也有很多人品差的,长的不帅的,内容页都被转码。
我们先要插入一个框架。当然插入之前先要定义一个框架网页名字就叫:baidu.html
然后我们在【http://m.xxxx.com/info_1792.html】这个列表页插入一个框架如下(这个列表页就是带小说封面那种)
<iframe id="readbook" src="http://m.xxxx.com/baidu.html?p=m&id=7792" src="http://m.xxxx.com/baidu.html?p=m&id=7792" height="0" width="0" frameborder="0" scrolling="no"></iframe>
可以看图,大鸟标注红色的地方都是你要修改的,请仔细看,如果大鸟没有标注红色,但是还是需要修改的,请自行修改。因为这里权重会比较高,所以排名比较好,流量也会很多,所以基本都是这类被转码。
但是呢,还有 很多人的那种都是小说章节的列表页被转码(http://m.xxxx.com/xs/1/7792/(列表页))就是这种被转码,那我们也要插入一个框架。
<iframe id="readbook" src="http://m.xxxx.com/baidu.html?p=i&aid=7&id=7792" src="http://m.xxxx.com/baidu.html?p=i&aid=7&id=7792" height="0" width="0" frameborder="0" scrolling="no"></iframe>
这些代码插入在</body>之前的任何地方,位置随便选。注意标注红色的地方都要自己修改。
这里弄好之后,我们开始弄核心的部分,框架网页的部分,代码如下!
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="robots" content="noindex,nofollow" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>来源检测_某某小说</title>
</head>
<body>
<script>
function doParse(url) {
var params = {};
if (! url ) return params;
var paramPart = url.substring(url.indexOf("?") + 1);
var parts = paramPart.split("&");
for(var i = 0; i < parts.length; i++) {
var index = parts[i].indexOf("=");
if (index == -1) continue;
params[parts[i].substring(0, index)] = parts[i].substring(index + 1);
}
return params;
}
if (document.referrer && document.referrer.indexOf("http://m.xxxxx.com") != 0) {
var params = doParse(location.href);
if (params.p) {
var url = "";
if ("m" == params.p) {
url = "http://m.xxxxx.com/info_" + params.id + ".html";
} else if ("i" == params.p) {
url = "http://m.xxxxx.com/xs/" + params.aid + "/" + params.id + "/";
} else if ("c" == params.p) {
url = "http://m.xxxxx.com/xs/" + params.aid + "/" + params.id + "/" + params.cid + ".html";
}
if (url) window.top.location.href = url + "";
}
}
</script>
</body>
</html>
大家自己保存好,注意名称,大鸟这类是baidu.html,编码是utf-8,名字随意取,编码就两种任选。上面需要修改的地方修改好。
我擦,这里看的好难过。大鸟弄个附件你们自己下载看吧。保存好网页之后,放在根目录大鸟的演示是放在根目录。全部改好就可以等生效了,方法是绝对有效的目前来说。估计,看到这里有的人已经看懂了,原来是通过载入框架来辨别是不是原来的网页,不是则回到原来的网页。
下载地址:【框架网页下载】
总结:这方法说实话还是有难度的。小白估计看的一脸懵逼,没有一点动手能力的,大鸟也不建议你动手部署代码了,大鸟在看看有没有更简单通用有效的方法来解决转码问题。