簡體   English   中英

如何防止某人抓取我的網站數據?

[英]How to prevent someone from scraping my website data?

我正在使用PHP為我的網站編寫服務器端代碼。 防止某人抓取我的數據的最佳方法是什么?

就像在PHP中一樣,如果有人使用file_get_contents()或有人在iframe元素中獲取我的登錄表單或在登錄表單中輸入的數據-我該如何防止這種情況發生?

我正在使用PHP 5.47,MySQL,HTML和CSS。

我認為,如今作為一名Web開發人員令人恐懼,並且在涉及Web安全性時可能會陷入“過度殺傷”的誘惑。 正如其他答案所提到的那樣,不可能停止自動抓取,並且如果您遵循以下准則,也不必擔心:

  • 您正在考慮網站安全性真是太好了。 從不改變。

  • 永遠不要從您不希望用戶看到的服務器發送任何東西。 如果用戶無權查看它,請不要發送它。 不要在jQuery.data()或數據屬性中“隱藏”重要的片段。 不要在混淆的JavaScript中松懈一切。 在用戶登錄等之前,請勿使用技術隱藏頁面上的數據。

    如果一切離開服務器,則一切可見。

  • 如果您要保護內容免受“內容場”抓取的影響,請使用經過電子郵件驗證的用戶注冊( 包括某種形式的GOOD reCaptcha,以使大多數bot感到困惑 )。

  • 保護您的服務器!!! 盡最大可能,請確保不要留下任何常見的漏洞。 閱讀此-> http://owasp.org/index.php/Category:How_To <-是的。 所有的 ;)

  • 防止直接訪問您的文件。 更傳統的方法是defined('_SOMECONSTANT') or die('No peeking, hacker!'); 在PHP文檔的頂部。 如果未通過適當的通道訪問文件,則服務器不會發送任何重要信息。

    您也可以與.htaccess混為一談,或者直接負責。

您可能擔心跨站點腳本(XSS)嗎?

如果您擔心用戶輸入登錄信息時會截取數據,則可以實施雙重驗證 (如Facebook)或使用SSL

實際上,一切都歸結為您的網站將要做的事情。 如果是工廠站點,請在要點中介紹基礎知識,並希望獲得最好的結果;)如果它像銀行站點之類的敏感項目,那么……還不做銀行站點: P


順便提一句:我從不觸摸信用卡號等。 我開發的任何網站都會禮貌地使用API​​來注冊一家擁有保險和專門負責安全工作的員工的公司(不僅是年邁的小老兄和我的神經衰弱的人)。

使用javascript或php,您只需減少數據報廢。 但是您無法停止數據抓取。 瀏覽器可以讀取html數據。 因此用戶可以查看您的頁面源。 並得到。 您可以禁用按鍵事件,但無法停止抓取

沒有辦法確保這一點。 您可以實現一些Javascript函數來嘗試阻止這種情況,但是如果客戶端只是停用JS(或者服務器只是忽略了它),則無法阻止這種情況。

確實很難防止這種情況。 在這里找到了類似的討論。 這將回答您的大多數疑問,但是如果您想要更完善的保護,則需要諸如Scrapesentry和Distil之類的復雜程序和服務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM