Как вы предотвращаете игры просмотров страниц? - PullRequest
11 голосов
/ 02 марта 2011

Скажем, у меня есть сайт со страницами. Страницы ранжируются в зависимости от количества просмотров. Хорошо, чтобы страница была высоко оценена, потому что она будет показываться выше в моих результатах поиска. Следовательно, автор страницы может попытаться настроить систему, чтобы увеличить количество просмотров этой конкретной страницы.

Итак, как вы можете предотвратить это, сохраняя квази точный счет?

Я придумал следующую «схему»:

Пользователь может влиять на просмотр страницы только один раз за сеанс. Это то, что я обычно ожидаю. Если пользователь позже вернется на сайт и снова просмотрит страницу, он будет считаться другим просмотром страницы.

Проблема в том, что это делает приращение просмотра страницы уязвимым для скрипта, который очищает свои куки перед каждым запросом. Самым простым решением этой проблемы было бы сохранить IP-адрес и разрешить одному и тому же IP-адресу увеличивать количество страниц только один раз . Это, однако, имеет несколько основных недостатков; Во-первых, это потенциально заняло бы много места, а во-вторых, не позволило бы пользователям в больших локальных сетях увеличивать количество страниц. Наконец, пользователь не может повторно посетить страницу и увеличить просмотр страницы более одного раза с одного и того же ip. Я могу жить с этим, но лучше жить без этого.

Лучший способ, с помощью которого я могу придумать, - сохранить последние X ip-адресов и не позволить никому из этих ip-адресов повлиять на количество просмотров страниц . Это эффективно остановит любой (простой) скрипт для увеличения количества просмотров страниц. Кроме того, вероятно, было бы неплохо добавить добавление задержки к отображению фактического количества просмотров (в основном, с двумя счетами и полем даты и времени, когда счетчик «отображения» в последний раз обновлялся с помощью «фактического» счета) что-то, что я считаю, сделано на сайтах SE).

Это не идеальное решение, поэтому я был бы рад услышать ваши предложения и / или комментарии.

Ответы [ 2 ]

4 голосов
/ 02 марта 2011

Не мешайте: следите и управляйте.

Я бы использовал совсем другой подход.Пусть просмотры страниц останутся прежними, но будут созданы отчеты для игр с видом.Если страница становится игровой, вы можете узнать, кто несет ответственность, дать им предупреждение и штраф за просмотр страницы.Если это продолжится, запретите их.

2 голосов
/ 02 марта 2011

Я думаю, что вам следует учитывать и характеристики браузера.Отпечатки пальцев в браузере уже были сделаны и широко известны.Затем вы можете выяснить некоторые довольно сложные эвристические методы, чтобы определить, пытается ли тот же пользователь играть с вами.Но не разглашайте, что вы, конечно, используете дактилоскопию в браузере.Кроме того, это не остановит режим инкогнито, но я просто пытаюсь дать вам еще одну возможность для подражания, в дополнение к вашим текущим стратегиям, ориентированным на IP.

...