首頁 php教程 php手册 網站防止被刷票的一些思路與方法_php基礎

網站防止被刷票的一些思路與方法_php基礎

May 16, 2016 am 09:00 AM

1. IP限制
這是使用的最多,也是最廣泛,必不可少的刷票限制。而且由於專題都沒有使用者模組,使得這個方法,幾乎成了唯一可行的手段。該方式,透過取得存取遊客的IP位址,來限制其在一段時間內所能使用的票數。當然,正常訪問頁面投票的遊客,肯定都能很好的被這個手段所限制,但是,各種投票的活動和專題,以及豐厚的獎品,使得一些人想方設法的想要進行刷票。

ADSL用戶,可以透過斷線重撥來更換IP位址。
使用代理存取的用戶,我們也無法取得其真實的IP位址。
還有我們未知的刷票工具。
以上都是我們沒有辦法克服的難題,對於網咖/內網用戶來說,這樣的設定也會顯得不夠公平。

2. Cookies 驗證
這也是網路上所用到較多的手段,不過,所有來自於客戶端的資訊和內容都是不可靠的。熟知cookies原理的人,就可以輕易的繞過限制。

cookies 可以停用。
使用代理存取的用戶,我們也無法取得其真實的IP位址。
Cookies可以隨意清除、修改。
3. Session 驗證
session會給所有造訪的遊客,指定一個唯一的sessionID。這樣,似乎對於防止刷票有一些作用。可惜session有致命的缺點。

關閉瀏覽器,session就會被銷毀。
客戶端禁用cookies,session也會失效。
4. 驗證碼
註冊,登陸,回复,發文…驗證碼使用的範圍很廣,很多。可惜,至於具體效果呢,長久下來,只發現這樣的方式,其實只是加大了普通遊客的投票難度,而且刷票頻繁的訪問驗證碼,也大大加大了服務器負擔。

有一種驗證碼是可行的,google推出的圖形驗證碼,旨在讓使用者將圖片翻轉至正確的方向,方可完成驗證。想必很少有軟體或電腦操作可以很好的繞過這樣的驗證碼。不過,缺點呢,實現難度很高。

5. MAC位址限制
作為web程序,很難取得真實的Mac位址(我用php/js實驗過,並沒有成功的取得到Mac位址)。當我們讀取客戶端Mac位址時,讀取的也是儲存於註冊表的一個訊息,它也是可以進行修改的。

6. 使用者模組
這應該算很有用的方式。每個遊客,必須註冊了帳戶才能進行投票,透過限制帳戶ID來限制投票,並且可以限制初始註冊用戶,一段時間內不能參與投票。而且,真有大量的註冊用戶湧入,也可以增加網站的流量。可是,對於小地區網站來說,這樣會讓網友覺得很麻煩,可能放棄投票,可能會流失網站的使用者。

7. 行為記錄
其實,很多刷票行為我們是沒辦法限制的。可是有時候,我們卻可以很好的記錄下來。而且當偵測到非正常投票的時候,自動提出票數,要嘛返回投票成功的假象,也可以很好的限制刷票。

缺點就是,記錄過多的數據,會讓伺服器壓力很大。而且,如果記錄行為的記錄點不夠多,不夠複雜,也可能被刷票的專業戶所參透。

8. 回答問題
第一次使用這個方式限制刷票的時候,我們很欣慰的看到了不錯的效果。可惜,如果沒有足夠海量的題庫,很快問題的內容和答案就會被收集起來。反而讓正常投票的用戶,覺得投票很噁心、很麻煩,產生厭惡心理。漸漸的也被我們拋棄了。

9. 隨機投票地址
該方法, 讓每個造訪頁面的使用者得到一個隨機唯一的KEY,透過這個KEY,產生一個投票地址,該地址只能訪問一次,使用過後便作廢。

可惜,指定的KEY的內容,我目前是採用的sessionid ip 隨機數 產生的MD5碼,而sessionid和ip在上面的內容都提到,是可以銷毀和篡改的。這樣的方式,也不過是在ip限制和session限制無效時候的垂死掙扎。

10. 填寫資料
投票時,讓遊客填寫身分證,姓名,手機號碼等可以表示一個人身分的訊息,來進行唯一性驗證。不過,身分證你知道格式,姓名隨便填,手機號碼隨便填寫,也是沒辦法限制的。反而讓正常投票的人覺得麻煩。

11. 投票碼/排號系統
投票前,使用者都需要在其他頁面/郵箱先取得到一個唯一投票的編碼/卷,使用一次作廢。不過,如何驗證『人』的唯一呢,如果有用戶,他的郵箱夠多,是不是就可以無限取得投票碼呢。

對!所以,這也只是治標不治本的方法了。不過,至少,這個方式也會讓刷票的人覺得很麻煩。但是同時,也會讓正常投票的人覺得不方便。不過,能夠讓刷票黨,刷得沒那麼痛快,也算是有用了。

12. 人民幣投票
虎,這樣最好,不管是發短信,打電話,還是支付寶,一票一元人民幣,你如果是足夠捨得,當然,隨便你投,隨便你刷,咱也樂意不是。透過支付介面的結合,作弊是相當難的了。

不過,公平性有待考究,畢竟不是所有人的支持者都有錢,都捨得花錢,可能讓好的作品因為'窮'而得不到票數,這是在咱公平、民主的社會中,是不提倡的!

好了,差不多就以上這些方式。引用一個網友的原文:「要完全杜絕刷票,基本上只能靠人」。

拋磚引玉:

flash投票,不過不是很清楚原理,有空的時候會投入測試。
插件。 web插件,可能需要用戶下載安裝,一般用戶會覺得很麻煩,可行性有待考究。
一些有趣的設定例如,短時間內的多次投票,可能導致投票數下降;可以給作品投負票數,不過有一定幾率無效或者反射到其他作品;類似農場的'偷菜',我們可以投票等。也許可以增加一點可玩性,可是公平性就無法保證了。
總結:個人覺得目前最有效的只能是人民幣投票了,可以很好的限製刷票行為。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)