我們通常情況下會遇到很多灌水機不斷的向站點提交惡意數據,cit.cn也不例外,這個幾乎成了一個防止垃圾灌水的課題,那我們有什麼好的辦法呢?
表單提交時候增加驗證碼,可以有效防止灌水機提交數據。但是隨著圖形圖像識別程序變的更加強大,驗證碼識別也不斷的在提高他的難度,有些驗證碼甚至加入了聲音的識別,一些小站點可以采用這樣的方式。
if($_POST['vcode']!= get_vcode()) { exit('驗證碼校驗失敗,無法入庫'); }
和驗證碼類似,增加一些隨即的驗證問題,也可以防止惡意提交
這個比較容易理解,審核後才能夠正常顯示
select*from article where is_check=1
另外對於一些內容發布,可以考慮使用其他一些審核的方式,比如郵件確認等,只有通過審核的信息才能夠正確被顯示。
尤其是一些開源程序,通常是采用一些簡單的名稱,例如:title,body等,這些表單很容易被構造,如果打亂表單的名稱和順序,則不會讓灌水機那麼輕易的提交數據,當然前提是你的程序中要對每個字段的數據進行處理。
對於一些惡意的內容信息禁用關鍵詞,讓他無法正常提交活著被評比,禁用ip在adsl時代實用性不大,但也算是一種辦法,禁用帳號麼也算是一種方法了,類似很多社區的禁言功能。
防止屏蔽的方法有許許多多,但是總是有辦法被破解的,只要你是開放給別人提交的,總會遭到惡意的提交的,所以這個是無法完全杜絕的只能盡量避免。
*