如何阻止訪問不存在的虛假連結?
我在我的 Google Analytics(分析)帳戶中註意到,我的網站突然受到大量垃圾郵件流量的影響,破壞了訪問者統計數據。網路伺服器在 Ubuntu 18.04 和 Apache 上執行。
這甚至不是您可以追踪來源的推薦垃圾郵件,但似乎是自動機器人垃圾郵件,指向我網站上不存在的連結,可能是為了查找受感染的文件。垃圾郵件機器人不使用完整的 URL,只訪問某些子目錄連結,例如:
/INVOICE-CT/11.php /INVOICE-CT/1.php /INVOICE-CT/counter/counter.php /INVOICE-CT/process.php /CT/b432.html /CT/b136.html /CT/c1428.html /CT/b246.html /CT/b510.html /ct/0295.html /CT/b118.html /ct/b385.html /CT/b738.html /ct/c1559.html
阻止這種流量的最佳方法是什麼
.htaccess
?理想情況下,這不應干擾“人為”404 錯誤。
由於 Google Analytics 不顯示訪問者 IP,您如何辨識 Ubuntu 中的機器人 IP 以隨後阻止它們?
非常感謝您的建議。
您可以執行以下操作
.htaccess
來阻止所有以開頭/INVOICE-CT/
或/CT/
. 這使用 mod_rewrite 返回系統生成的(或自定義 Apache 404 錯誤文件,如果您定義了ErrorDocument
):RewriteEngine On RewriteRule ^(invoice-)?ct/ - [R=404]
如果您的錯誤文件不包含 GA 程式碼,那麼 GA 將不會記錄該請求。
理想情況下,這不應干擾“人為”404 錯誤。
我假設其他 404 是由您的 Web 應用程序生成的,而不是 Apache?否則,我們需要重新考慮上述方法並改寫為替代 URL。
由於 Google Analytics 不顯示訪問者 IP,您如何辨識 Ubuntu 中的機器人 IP 以隨後阻止它們?
顯然,這種方法不能辨識機器人 IP。對這些完全無效的 URL 的任何請求都將以相同的方式被阻止。辨識這些惡意機器人並非易事,最好使用 mod_security 或 fail2ban 等伺服器模組來完成。
阻止這種流量的最佳方法是什麼
.htaccess
?“最好的方法”可能根本不使用
.htaccess
(或 Apache 配置),而是在您的 Web 應用程序本身中使用(以便優先考慮“好”流量)。只有在您的應用程序確定它是 404 後,才檢查請求的 URL。如果它是這些完全無效的 URL 之一,則提供簡單的(非 GA)404 文件,否則提供您的標準 404 錯誤文件(包含 GA 程式碼)。…大量垃圾郵件流量會破壞訪問者統計數據。
雖然大概這種“垃圾郵件流量”已經生成 404 並且沒有訪問您的真實 URL?