如何使用.htaccess擋掉搜尋引擎機器人?

相信很多網站常常遭到流量爆掉導致於主機需要加錢,或是月底常常流量不敷使用被主機商停掉。若有這些問題的使用者不知是否有想過是哪些問題讓流量變大的呢?通常流量會變大可能是檔案被盜連或者是搜尋引擎機器人大量爬你的網站造成讀取量過大,造成流量不夠使用,因此我們就得透過.htaccess擋掉可怕的搜尋機器人!

如果你是租用無限流量虛擬主機,基本上就不用太擔心流量問題,因為不會有流量爆掉的問題,但是也不要因此僥倖,因為很可能CPU Time超過被停空間。所以當流量異常過大時一定要設法找出增加流量的原因,若是不正常增加一定要設法去擋下不正常增加的途徑。

通常檢查方法就是去看一些流量報表,像是Google分析或是Yahoo站長工具,透過這些專業的分析工具幫你查看看到底流量是哪邊來的最多?如果你是cPanel,則可以透過後台的Analog來看流量分析資料。

最常見的流量不正常增加應該是圖片或是檔案被盜連,當然若有此問題你可以透過.htaccess來防止盜連問題,至於該怎防護大家可以參考這篇:如何用.htaccess防止圖片、檔案盜連?

除了檔案被盜會大大增加流量外,還有可能是網站遭受到太多的搜尋引擎來訪。蠻多論壇常常發生流量不敷使的問題,通常原因就是檔案遭盜連以及搜尋引擎機器人太多,導致論壇資源被吃光。因此快來封鎖一些搜尋引擎吧!

建立「htaccess.txt」文字文件

首先一定要建立一個htaccess.txt文件,你可以用筆記本或者是Notepad++建立都可以,建立完成後請按照下方你需要擋的搜尋引擎,將語法加入檔案中。

使用.htaccess擋掉搜尋引擎機器人

擋掉百度暴力搜尋引擎

通常很吃流量的搜尋引擎都是百度,它是傳說中的暴力搜尋引擎,不遵守搜尋引擎的規則,若你嘗試使用robot.txt來擋住,那非常恭喜你,絕對無效。所以一定要使用比較暴力、強硬的手段才能,因此透過.htaccess就可以處理了,如果你要擋掉大陸的一些搜尋引擎(像是百度、搜狗等),那請將以下程式碼貼到htaccess.txt檔案中。

#擋掉百度

SetEnvIfNoCase User-Agent "^Baidu" bad_bot
SetEnvIfNoCase User-Agent "^sogou" bad_bot
SetEnvIfNoCase User-Agent "^Bloghoo" bad_bot
SetEnvIfNoCase User-Agent "^Scooter" bad_bot
Deny from env=bad_bot

使用.htaccess擋掉搜尋引擎機器人

擋掉Google搜尋引擎

如果你想要擋掉Google搜尋引擎,當然也可以透過.htaccsee擋掉,只要輸入以下程式碼就可以了,如果要連同暴力百度搜尋引擎一起封鎖,那就把這兩串程式碼放在同一個htaccsee.txt檔案中。

#擋掉Google
SetEnvIf User-Agent "^Googlebot" google
Deny from env=google

上傳並更名為.htaccess檔案

接著請上傳剛剛設定好的htaccess.txt檔案,然後將檔案上傳到網站根目錄,也就是放在「public_html」目錄下,接著將檔案名稱改成「.htaccess」,這樣就完成設定阻擋搜尋引擎囉!

使用.htaccess擋掉搜尋引擎機器人

網站上已經有.htaccess檔案

如果你網站上本來已經有.htaccess檔案,若仍想要擋掉搜尋引擎,那請您忽略剛剛前面說的建立「htaccess.txt」文字文件,您只要到FTP中去下載您原本的.htaccess檔案,下載後請開起該檔案,在以不破壞原本.htaccess結構的前提下,將阻擋搜尋引擎的程式碼加在檔案內,一般來說你可以加在檔案尾部或是前頭,千萬不要安插到原本的架構中,否則網站將會發生錯誤。

使用.htaccess擋掉搜尋引擎機器人

在Google News上追蹤我們最新文章
香腸
香腸

喜歡在網路上透過文字與圖片分文章教學,默默地用鍵盤烤了9年的香腸。另外還身兼阿腸接案餬口飯吃。對了,別叫我阿腸,請叫我香腸,這樣我才知道你看我部落格長大的。

文章: 1781

19 則留言

  1. 香腸您好 :

    我的問題可能滿另類的…

    請問是否有其他擋掉搜尋的資料 ?
    (像此篇是 google 和 百度)

    香腸回應:
    擋掉搜尋資料? 是指不要收錄特定資料?

  2. 如果鎖起來大家都看不到了 真的要索 就所百度那些的就OK了 GOOGLE千萬不能所 一鎖大家都很難找到你的網站了

    香腸回應:
    當然是不會鎖Google的,我可是愛用者呢~XD

  3. 香腸版大!

    請問為何是月底才會被主機商通知超過資源的限制,而不是一超過就通知我們?
    是以每月算的嗎?有沒有辦法控制到剛好不超過他的cpu限制?

    香腸回應:
    主機商通知要看各家自己的規定,每一家可能都不一定。
    至於CPU TIME限制,這無法控制,要配合天時地利人和,有太多因素在裡頭,每日網站超過千人就很容易引爆CPU限制。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料