Блокировка ботов, посещающих платные URL

У меня есть приложение Laravel, которое обслуживает некоторый контент из внешних ссылок, платных ссылок. Проблема в том, что боты посещают все эти ссылки, и получение счета в конце месяца не так весело, когда эти боты делают 100000 запросов.

Как я могу ограничить доступ для ботов и других нежелательных посетителей?

2 ответа

Полностью согласен с @CharlesDuffy, теперь, если вы хотите что-то простое, вы можете изменить способ запроса предельной ставки Laravel. Проверьте этот пакет, сделанный Грэмом Кэмпбеллом.

Вы должны разрешать только аутентифицированным пользователям доступ к этим премиальным ссылкам с использованием промежуточного программного обеспечения аутентификации на соответствующем маршруте в routes/web.php:

Route::get('linkWhichCostsYouMoney', function () {
    // Only authenticated users may enter...
})->middleware('auth');

Смотрите документы Laravel.

Вы также можете попробовать запретить роботам получать доступ к платным страницам с помощью robots.txt. Это остановит только хороших ботов, а не плохих ботов.

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

Другие вопросы по тегам