2010-05-17 77 views
3

我們在網站上實施了一個評分系統,而該鏈接涉及腳本的鏈接。然而,由於網站的絕大多數評級在3/5,而評級甚至在1-5之間,所以我們開始懷疑搜索引擎爬蟲等正在通過。使用的URL是這樣的:禁止robots.txt中的特定網址

http://www.thesite.com/path/to/the/page/rate?uid=abcdefghijk&value=3 

當我們開始我們以下內容添加到我們的robots.txt:

User-agent: * 
Disallow: /rate 

這是不正確或者是Googlebot和其他人根本無視我們的robots.txt?

+0

這是不正確的,因爲它會禁止確切的URL/rate,這可能不存在。儘管如此,我並不知道提供解決方案。 – 2010-05-17 10:11:45

回答

4

您應該使用POST進行更改,因爲搜索引擎通常不會提交表單。另外,這樣可以防止下載網站的用戶遞交(例如通過wget)遞交大量投票。

根據您的網站,處理投票,雖然javascript也可能是一個解決方案。

關於你的robots.txt: 它是在根路徑 - 即http://www.thesite.com/robots.txt - 如果你的等級系統是在/胡說/速率則需要使用Disallow: /blah/rate代替Disallow: /rate

+0

確認我的懷疑 - 我會考慮修改評級,以便它使用post或只訪問根目錄中的/ rate腳本,因此速率實際上是正確的。謝謝所有 – chrism 2010-05-17 10:19:40

+0

請使用POST。對於執行非只讀操作的任何操作,使用GET不是一個好主意,除非它需要您登錄(例如,管理區域中的「刪除」鏈接可以) – ThiefMaster 2010-05-17 10:24:44

+0

我會,但作爲一個快速現在修好了(關閉穩定的門後,無論如何,馬已經狂奔)我會得到它來執行腳本在根。 – chrism 2010-05-17 10:33:14

0

看起來不正確我。您只禁止訪問http://www.thesite.com/rate(以及IIRC下方的頁面)。加上一些爬蟲忽略robots.txt

更好地做到這一點,以便評分只會響應POST,而不是GET。搜索引擎從來沒有使用POST。