Реферер PHP: как убедиться, что запрос действительно приходит от того, откуда он должен прийти - PullRequest
3 голосов
/ 25 июля 2010

Я хотел бы добавить ссылку на мой сайт на другие «одобренные» домены. Когда они нажимают на ссылку, она переходит на страницу, которая проверяет реферер ($ _SERVER ['HTTP_REFERRER']), чтобы убедиться, что они пришли из домена, который одобрен для моей ссылки. Это может быть подделано, так как я могу убедиться, что клики действительно поступают с одобренных доменов?

1 Ответ

8 голосов
/ 25 июля 2010

Вы не можете сделать это.Вы не можете предотвратить закаливание реферера.

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

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

...