2010-09-20 72 views
1

我使用wordpress的自定義永久鏈接,我想禁止我的帖子,但離開我的類別頁訪問蜘蛛。以下是該網址是什麼樣子的一些例子:正則表達式for robots.txt - 不允許在目錄內的東西,但不允許目錄本身

分類頁: somesite點com/2010 /分類名/

帖子: somesite點com/2010 /分類名/產品 - 名稱/

所以,我很好奇,如果有某種類型的正則表達式的解決方案在/分類名/同時禁止任何更深一層允許離開頁面(第二個例子)。

任何想法?謝謝! :)

回答

0

有些信息可能有幫助。

robots.txt協議沒有官方標準組織或RFC。它是1994年6月由機器人郵件列表成員([email protected])以協商一致方式創建的。指定不應被訪問的部分的信息在網站的頂級目錄中的名爲robots.txt的文件中指定。 robots.txt模式通過簡單的子字符串比較進行匹配,因此應該注意確保匹配目錄的模式具有最後的'/'字符,否則所有名稱以該子字符串開頭的文件將匹配,而不僅僅是那些目錄。

沒有100%確定的方式排除您的網頁被發現,除了不發佈它們當然。

請參見: http://www.robotstxt.org/robotstxt.html

沒有在共識允許。再加上Regex選項也不在共識中。

從機器人共識:

這是目前有點尷尬,因爲沒有「允許」字段。最簡單的辦法就是把被禁止到一個單獨的目錄下的所有文件,說「東西」,並留下了一個文件,在這個目錄之上的水位:

User-agent: * 
Disallow: /~joe/stuff/ 

或者你可以明確地禁止所有禁止的網頁:

User-agent: * 
Disallow: /~joe/junk.html 
Disallow: /~joe/foo.html 
Disallow: /~joe/bar.html 

一個可能的解決方案

使用的.htaccess設置從一個特定的文件夾禁止搜索機器人,同時阻止壞的機器人。

參見:http://www.askapache.com/htaccess/setenvif.html

0

下面是否會有訣竅?

User-agent: * 
Disallow: /2010/category-name/*/ 

您可能需要明確允許/2010/category-name在特定的文件夾:

User-agent: * 
Disallow: /2010/category-name/ 
Allow: /2010/category-name/product-name-1/ 
Allow: /2010/category-name/product-name-2/ 

但根據this articleAllow場不在標準範圍內,所以有些爬蟲可能不支持它。

編輯: 我剛剛發現在每個頁面內使用另一個資源。 This page解釋說得好:

的基本思路是,如果包括 類似這樣的標記:

<META NAME="ROBOTS" CONTENT="NOINDEX"> 
HTML文檔中

,該文件 不會被索引。

如果你這樣做:

<META NAME="ROBOTS" CONTENT="NOFOLLOW"> 

該文件中的鏈接不會被 機器人解析。

+0

這就是我有點疑惑...將*需要在接下來的目錄一步東西,不符合目錄本身(/分類名被允許/在該例子嗎? )對不起,我完全陌生! – Jeff 2010-09-20 01:13:43

+0

請參閱關於使用''的修訂答案。 – 2010-09-20 01:25:53

+0

我在想第一個解決方案可能會起作用,因爲我不需要允許給定目錄中的任何東西,我只是想確保目錄本身是可達的(它應該是,對吧?如果我是正確的,只有在類別名稱之後有實際的東西時,/ * /纔會匹配?)機器人元標記唯一的問題是我有幾千個帖子,部署將是一個真正的項目。 – Jeff 2010-09-20 01:50:45