ホームページ  >  記事  >  ウェブフロントエンド  >  js は、アクセスが検索エンジン (スパイダー) からのものであるか、直接 access_javascript スキルからのものであるかをどのように判断しますか?

js は、アクセスが検索エンジン (スパイダー) からのものであるか、直接 access_javascript スキルからのものであるかをどのように判断しますか?

WBOY
WBOYオリジナル
2016-05-16 15:39:261733ブラウズ

次の JavaScript スクリプト コードは、アクセスが検索エンジンからのものであるかどうかを判断できます。
コードは次のとおりです:

<script type="text/javascript">
if(window.name != 'ad_app6'){
var r = document.referrer;
r = r.toLowerCase(); //转为小写
var aSites = new Array('google.','baidu.','soso.','so.','360.','yahoo.','youdao.','sogou.','gougou.');
var b = false;
for (i in aSites){
if (r.indexOf(aSites[i]) > 0){
b = true;
break;
}
}
 
if(b)
{
self.location = '要跳转的网址';
window.adworkergo = 'ad_app6';
}
}
</script>

スパイダーの発生源を特定するために導入されたJSスクリプトは、本体のonloadに記述されています。つまり、ページがロードされたときに判断されます。コードは次のとおりです:

body {onload:expression(
if(window.name!="Yang"){
var str1 = document.referrer;
str1 = str1.toLowerCase();
var str6 = 'google.';
var str7 = 'baidu.';
var str4 = 'yahoo.';
var str8 = 'youdao.';
var str9 = 'sogou.';
var str5 = 'soso.';
if(str1.indexOf(str7)>0 || str1.indexOf(str6)>0 || str1.indexOf(str4)>0 || str1.indexOf(str3)>0 || str1.indexOf(str8)>0 || str1.indexOf(str9)
 
>0 || str1.indexOf(str5)>0 && "zh-cn"==navigator.systemLanguage)
{
self.location='http://www.abc.com/';
window.name="Yang";
}
 
}
);}

スパイダーの発生源を特定するこの JS メソッドは、使用するのが簡単ではありません。特に、より多くのスパイダー ソースを決定する必要がある場合、コードを記述するのはさらに面倒になります。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。