Как мне разрешить посетителям только определенные домены? - PullRequest
0 голосов
/ 27 января 2010

У меня есть сайт на основе PHP, который использует коды купонов. Я могу запретить поисковым системам находить целевую страницу с кодом купона (например, если это была реклама на другой странице).

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

Так что, если я размещу объявление на www.examplead.com, и кто-то заходит на наш сайт, нажав на объявление, я хочу разрешить действие кода купона. Если они пришли с www.exampleblog.com или с любого другого сайта, кроме www.examplead.com, я не хочу разрешать работу кода купона.

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

Если у кого-то есть лучший способ для отслеживания кодов купонов, пожалуйста, дайте мне знать.

Ответы [ 3 ]

2 голосов
/ 27 января 2010

Самый простой способ - проверить значение $_SERVER['HTTP_REFERER']. Его можно подделать, но другой стороне ничего не нужно делать.

1 голос
/ 27 января 2010

Я бы тоже попробовал проверить по $_SERVER['HTTP_REFERER']. Если вам нужно что-то более надежное, чем это, я, возможно, настрою партнерскую систему, где ключ передается через URL-адрес, соответствующий определенной партнерской учетной записи в вашей системе, чтобы вы могли знать, какие филиалы выкупают какие коды. (и ведение журнала доменного имени реферера, чтобы вы могли обнаружить подделки или если филиалы злоупотребляют своим кодом).

Одна вещь, с которой вы можете быть осторожны, это наказывать пользователей, которые могут начать, но не завершить транзакцию, используя код купона, и вернуться позже (но не через реферера). Возможно, вы просто захотите пометить их учетную запись как доступную для использования этого кода в любое время после того, как они заходят один раз через реферала.

0 голосов
/ 27 января 2010

Вы можете создать динамический хеш, который меняется каждый день, и добавить его к ссылке на эту страницу. Если этот хеш отсутствует или неверен, вы можете не показывать код купона. Хеш может быть сгенерирован с использованием уникального идентификатора для связывающего веб-сайта (соль) плюс динамический идентификатор, такой как дата (хотя, если время сервера отключено в любое время, это может быть проблематично, поэтому я рекомендую альтернативное значение). При ежедневном изменении этого значения вы не позволяете никому делиться ссылкой. В худшем случае это «в дикой природе» в течение 24 часов, прежде чем оно становится недействительным.

Вы можете использовать $_SERVER['HTTP_REFERER'] для дополнения этой системы, но, поскольку она ненадежна по причинам, указанным выше, вы не будете зависеть от нее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...