Как скрыть партнерскую/реферальную ссылку, чтобы её защитить? Это вопрос задаёт себе каждый вебмастер, когда размещает на своем сайте ссылку на партнерскую программу.
Значительная часть пользователей Интернета страдают боязню реф ссылок. Во многом это распространено благодаря Российскому менталитету и рабовладельческим корням - душит жаба от того, что кто-то будет зарабатывать деньги, даже несмотря на тот факт, что никто при этом ничего не потеряет.
Давайте рассмотрим типичное поведение такого человека:
- Видя ссылку, выделяет её и нажимает правой клавишей мыши на ней.
- Выбирает пункт «Копировать».
- Открывает новую вкладку в браузере.
- Вставляет в эту вкладку адрес ссылки.
- Обрезает партнерский код.
- Открывает сайт и регистрируется.

Честно говоря, я не считаю нужным использовать для защиты своей реф ссылки что-то сложнее обычного PHP-редиректа, и то основная цель больше не распространять на сайте различные открытые к индексации ссылки. Если человек захочет, он всё равно найдет 1001 способ не стать Вашим рефералом, например, просто откроет окно поисковой системы и найдет партнерку по её названию. Поэтому не стоит портить себе карму и обманом привлекать таких людей. Я считаю, кто хочет пусть регистрируется, кто нет - и не надо.
Но так как люди всё таки интересуются различными способами защиты реф ссылок, рассмотрим все способы:
PHP-редирект
1. Простой способ.
Создаем файл link1.php и пишем внутри следующий код:
![]()
Дальше закачиваем этот файл на сервер, и используем вместо прямой ссылки:
<a href="http://partner.loveplanet.ru/cgi-bin/pl/affiliates/referral.cgi?id=11111">Рекомендую партнерку!</a>
ссылку на созданный PHP-файл:
<a href="http://www.mypersonalsite.ru/mylinks/link1.php">Рекомендую партнерку!</a>
Удобно создать отдельную папку на сервере, куда скидывать все PHP-файлы с ссылками. Из минусов - для каждой партнерки потребуется создавать отдельный PHP-файл и закачивать его.
2. Усовершенствуем PHP-редирект.
Вместо того, чтобы для каждой партнерки создавать отдельный файл, можно хранить список URL-ов в:
- В массиве array();
- В отдельном txt файле.
- В базе MySQL.
Здесь потребуется знание основ PHP. В этом случае будет файл-обработчик go.php, и список ссылок в базе.
Ссылка будет выглядит так:
<a href="http://www.mypersonalsite.ru/go.php?url=1">Рекомендую партнерку №1!</a>
<a href="http://www.mypersonalsite.ru/go.php?url=2">Рекомендую партнерку №2!</a>
<a href="http://www.mypersonalsite.ru/go.php?url=3">Рекомендую партнерку №3!</a>
Файл go.php:

Откуда получать данные (из массива, базы, текстового файла) особого значения не имеет.
JS-редирект
Такой код:
<a href="http://partner.loveplanet.ru/" onclick="this.href=http://partner.loveplanet.ru/cgi-bin/pl/affiliates/referral.cgi?id=11111">Рекомендую партнерку!</a>
позволит отобразить ссылку как обычную, а на самом деле при клике подставит партнерскую ссылку.
HTML-редирект
Действия аналогичны PHP-редиректу, но если, например, хостер не поддерживает PHP, можно использовать следующий HTML-код:
Файл url.html:

Для использования надо ввести в адресной строке браузера http://www.mypersonalsite.ru/url.html



