2012-09-25 54 views
1

我想寫一個腳本,它能讓我識別試圖淹沒我的oscommerce站點的機器人,但一些機器人經常更改它們的IP,所以我不能真正使用IP來禁止它們。爲什麼不應該讓機器人允許會話ID?

我在想可能是如果我啓用殭屍工具的會話,我可以使用會話ID來阻止殭屍工具。

我對此進行了一些研究,發現不推薦啓用殭屍工具會話,但我仍不確定爲什麼?

+0

下面的任何答案是否適合您? –

+0

我發佈了我在下面找到的答案。謝謝。 –

回答

3

允許殭屍程序進行會話的問題在於,某些惡意殭屍程序在某些情況下不會在它在您的網站上爬行的頁面上保持Cookie狀態。所以每一個機器人在你的網站上點擊都會產生一個新的會話。

+0

謝謝奧馬爾。我想我會再研究一下。我仍然不滿意。 –

2

大多數機器人會忽略會話ID,因爲他們知道這不是網址的一部分。否則,他們必須索引index.php?sid = ABC,index.php?sid = BBC,index.php?sid = CBC等頁面。因爲他們知道這是相同的頁面,所以他們會忽略會話ID。

你爲什麼不阻止基於user_agent的機器人?使用user_agent無法識別自身的機器人不能真正被阻止,除了IP地址。

1

下面是一些我發現 -

  1. 搜索機器人還可能得到會話ID和力量指數在同一頁數百時間或更長時間,因爲大多數殭屍不會保留他們的Cookie狀態。這將意味着重複的內容索引,並可能嚴重影響我們的搜索引擎排名。

  2. 由於bot在設計上忽略了Cookie標頭,因此它不會在每個後續請求中發回確認。實際上,機器人的每個請求都會創建一個新會話。一個大型網站上的侵略性機器人可以創建數百甚至數千的幻像會話,佔用內存中的空間,直到它們到期

+0

這聽起來像我在我的回答中所說的 –