Ограничение количества страниц, которые могут посещать не члены - PullRequest
0 голосов
/ 22 октября 2011
  1. Каков наилучший способ ограничения количества страниц, которые может видеть незарегистрированный посетитель? Мы должны проверить, существует ли $ _SESSION ['id'], но как ограничить количество страниц в данный период?

  2. Поисковики потребляют много трафика! Это практичный способ ограничить время, которое поисковые системы проводят на сайте? например позволяя им видеть только x страниц в день или час (поскольку они не зарегистрированы).

Ответы [ 3 ]

1 голос
/ 22 октября 2011

Ответы 2:

Если вас не интересует SEO, вы можете заблокировать поисковые системы с хорошим поведением с помощью robots.txt .С плохо ведущимися поисковыми системами будут обращаться так же, как и с плохо ведущими себя людьми.

Если вам небезразлична SEO, то вы активно хотите, чтобы они посещали ваш сайт!Отправка им кодов состояния 4xx или 503 не поможет проиндексировать ваш контент.

Однако Инструменты Google для веб-мастеров предлагают возможность запрашивать скорость сканирования .

1 голос
/ 22 октября 2011

Для вашего первого вопроса: Используйте сеансы, чтобы сохранить эту информацию. Также не используйте идентификатор, такой как числа с автоматическим приращением, которые будут храниться в вашей базе данных, конвертируйте его в очень длинную строку, не имеющую смысла, так что вероятность того, что кто-то изменит идентификатор и войдет в учетную запись другого пользователя, будет быть очень маленьким ...

На второй вопрос понятия не имею ... Извините ...

0 голосов
/ 22 октября 2011

Добавьте что-то подобное в свою структуру:

if (!isset($_SESSION['sc']))$_SESSION['sc']=0;

, затем на странице результатов добавьте что-то вроде этого:

$_SESSION['sc']++;
$c=$_SESSION['sc'];
if ($c>3) {echo "You have reached your search result limit."; exit;}

для второго вопроса: настройка сеансапеременная, чтобы запретить поисковым системам слишком много сканировать, не удастся.Роботам не нужно хранить cookie-файлы с вашего сайта, даже cookie-файлы сеанса. Это означает, что PHP не сможет отслеживать робота, если робот не хочет его отслеживать.

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

...