經(jīng)常被問到Google和搜索引擎是怎樣運(yùn)行的?一個(gè)核心問題是:Google是怎樣知道一個(gè)網(wǎng)站的哪些部分是網(wǎng)站所有者想讓它們顯示在搜索結(jié)果中?網(wǎng)站內(nèi)容發(fā)布者能夠指定部分網(wǎng)站不被搜索嗎?好消息是,網(wǎng)站內(nèi)容發(fā)布者可以使用很多方法控制你們的網(wǎng)頁在搜索結(jié)果中的顯示。
文件 robots.txt是這里的主角,該文件已經(jīng)成為業(yè)界標(biāo)準(zhǔn)好多年了。它讓一個(gè)網(wǎng)站所有者控制搜索引擎訪問他們的網(wǎng)站。你可以用robots.txt不同層次地控制訪問,比如讓搜索引擎只訪問整個(gè)網(wǎng)站,單個(gè)目錄,特定類型的網(wǎng)頁,或者某一網(wǎng)頁。有效地使用robots.txt能讓你更好地控制對(duì)你的網(wǎng)站 的搜索,但是如何達(dá)到這一目標(biāo)不是很顯而易見的。這是我們關(guān)于如何使用robots.txt來控制對(duì)你的網(wǎng)站的存取的一系列帖子的第一篇。 文件robots.txt有什么用?
互聯(lián)網(wǎng)真的很大。你只是不相信它是怎樣地?zé)o窮無盡地大。你也許認(rèn)為維護(hù)網(wǎng)站耗費(fèi)好多精力,但是那只是"網(wǎng)海一粟"。 (對(duì)Douglas Adams致以誠摯的道歉) 象Google這樣的搜索引擎會(huì)讀取所有信息并對(duì)這些信息索引,索引是為了讓一個(gè)搜索引擎對(duì)一些用戶查詢顯示與之相匹配的網(wǎng)頁。 為了做到這一點(diǎn)谷歌的一些電腦不斷抓取網(wǎng)站,他們有一個(gè)谷歌所知道的所有網(wǎng)站的名單,他們閱讀每個(gè)網(wǎng)站的所有網(wǎng)頁。所有這些機(jī)器被稱為Googlebot。一般來說,你是愿意讓Googlebot訪問你的網(wǎng)站,這樣你的網(wǎng)頁才可以被人們?cè)诠雀杷训健?
然 而,對(duì)你的網(wǎng)站上的某幾頁,你可能不想讓谷歌索引。舉例來說,你可能有一個(gè)目錄包含內(nèi)部日志,或者你可能有些新聞文章只能在支付費(fèi)用后才能訪問。你可以通 過創(chuàng)建一個(gè)文本文件名為robots.txt的文件并把它放置在根目錄下來告訴谷歌爬蟲不要去抓取他們。文件robots.txt包含了一個(gè)搜索引擎不能 訪問的頁面的清單。創(chuàng)建一個(gè)robots.txt是直截了當(dāng)?shù),它允許你用一套精密分層控制搜索引擎對(duì)你網(wǎng)站的訪問。
精細(xì)控制 除 了robots.txt文件讓您為你的一大堆文件簡潔明了給出指令外,你也可以利用robots META 標(biāo)簽來精確控制對(duì)你的單個(gè)網(wǎng)頁的訪問。為了做到這一點(diǎn),你只需要對(duì)你的HTML網(wǎng)頁添加特定的META標(biāo)簽來控制怎樣對(duì)單個(gè)網(wǎng)頁索引。歸而總之, robots.txt和META標(biāo)簽讓你更靈活地表達(dá)復(fù)雜的訪問規(guī)定變得比較容易。
一個(gè)簡單的例子
這里是一個(gè)簡單的例子,它是一個(gè)robots.txt文件。
User-Agent: GooglebotDisallow: /logs/
User -Agent行指明下面部分的一套指令只是為Googlebot。所有主要搜索引擎都閱讀并聽從你放在robots.txt的指令。只要你愿意,你可以為 不同的搜索引擎指定不同的規(guī)則。Disallow行告訴Googlebot不能進(jìn)入你網(wǎng)站的檔案日志子目錄。你放在日志目錄中的內(nèi)容將不會(huì)顯示在谷歌搜索 結(jié)果中。
禁止訪問單個(gè)文件
如果你有一篇只有注冊(cè)用戶才能訪問的文章,你一定想讓它排除在谷歌的結(jié)果之外。為了做到這一點(diǎn),你只需要在該文章對(duì)應(yīng)的HTML文件中添加一個(gè)META標(biāo)簽。該文件的代碼的最開始有點(diǎn)像:
...
這段代碼會(huì)阻止谷歌索引此文件。標(biāo)簽META特別有用,如果你只被允許編輯單個(gè)文件,而不是全站的robots.txt。他們還允許你逐頁地指定復(fù)雜的訪問控制規(guī)定。