Как скрыть реальные ссылки?
Здравствуйте.
Вы можете сменить каталог хранения файлов и скрыть реальные пути используя mod_rewrite для преобразования ссылок. Это даст возможность выполнять обращение по реальным адресам, не видимым никому. Вариантом может быть также написание программистами (либо использование уже готового решения для вашей CMS) дополнительного модуля для защиты.
Я сам в этом не разбираюсь, может ли кто-нибудь разложить все по полочкам?
- Вопрос задан более трёх лет назад
- 5382 просмотра
- Вконтакте
Вариантов это сделать — 2.
1) Если у Вас файлы маленькие — можно просто читать их из php скрипта и отдавать.
Перед этим можно проверять имеет ли право текущий пользователь скачивать этот файл.
Что то вроде
Плюс то что не требуется никакой дополнительной настройки, не зависит от ПО сервера, минус то что это решение жрет память т.к файл целиком грузится в php, жрет время бекенда т.к php скрипт работает пока не закончится загрузка.
В целом это решение я использовать не рекомендую.
2) Использовать nginx и директиву X-Accel-Redirect.
В конфиге nginx
В php коде соответственно
Решение отличное, быстрое.
- Вконтакте
- Вконтакте
- Вконтакте
Все гораздо проще. Делаете магазин файлов на готовой CMS. В данном случае подойдет Moguta CMS в бесплатной ипостаси. А после подключаете возможность покупки по кодовому слову. Торгуете собственно именно этими кодовыми словами.
Торговать ссылками. а кто помешает скаченное разместить на яндексдиске/ином ресурсе?
А после этого можно сколько угодно распространять ссыль. Даже с торрентом не придется заморачиваться.
Лучший вариант — это шифровка самого файла, а доступ по паролю, который будет автоматом высылаться на почту, которую введет покупатель. Хотя это другая проблема и другой вопрос 🙂
А вообще, писать такой вопрос не указав нормального ТЗ и не указав предпочитаемую CMS бесмыссленно.
Как скрыть ссылку в тексте — четыре способа

Вопрос о том, как скрыть ссылку в тексте, является достаточно популярным среди вебмастеров или пользователей, которые по тем или иным причинам не хотели бы, чтобы их ссылка выделялась в тексте или чтобы не было видно, куда она ведет.
Сразу оговоримся, мы не являемся сторонниками скрытия какого-либо контента на сайтах и на нашем сайте так поступать с пользователями, конечно же, не станем. Тем не менее, поскольку вопрос является популярным и существует достаточно большое количество случаев, когда скрытие ссылки может быть даже полезным для пользователя, давайте рассмотрим его более подробно.
1. Скрытие ссылки на странице сайта
Если вам нужно, чтобы ваша ссылка не выделялась в тексте страницы, то данный вопрос решается очень просто средствами html и css:
В HTML-коде страницы пропишем:
В CSS коде пропишем такой же стиль, какой имеет обычный текст на странице. Например, если на странице ссылки подчеркиваются и выделяются текстом, а сам текст имеет черный цвет и не подчеркивается, то в файле стилей .css укажем следующее:
[css]
a.my-link, a.my-link: visited, a.my-link: hover <
color: #000;
text-decoration: none;
>
[/css]
С помощью этого кода часть вашего текста будет являться ссылкой, но для пользователя она при этом никак не будет выделяться.
2. Прячем анкор ссылки
Предположим, что вы даете какую-то реферальную ссылку, но хотите, чтобы для пользователей она отображалась как обычная ссылка. Как было указано выше, мы данный метод не разделяем, но если вы считаете, что таким образом сможете привлечь больше реферралов, то воспользуйтесь следующим кодом:
[html]
<a href="настоящая ссылка" onMouseOver="window.status=’сокращенная ссылка’; return true" onMouseOut="window.status=»; return true">текст ссылки</a>
[/html]
При наведении на такую ссылку пользователю будет показываться, что он переходит на страницу «сокращенная ссылка» (например — суперпродукт.ru), а в действительности он будет переходить по ссылке суперпродукт.ru/?partner=ваш партнерский номер, что в случае его регистрации может принести вам реферрала.
3. Редиректы с помощью html или php
Это еще более убедительный способ для перенаправления пользователя по вашей партнерской ссылке: отправьте его на страницу своего сайта (например: вашсайт.ru/good-page.html), с которой уже будет производиться редирект на страницу партнерского сайта.
Редирект средствами html делается таким способом:
[html]
<html>
<head>
<title>Переходим на сайт суперпродукт.ru</title>
<meta http-equiv="refresh" content="0; url=http://суперпродукт.ru/?partner=ваш партнерский номер">
</head>
<body></body>
</html>
[/html]
То же самое на PHP делается созданием файла php, в котором будет указан следующий код:
[php]
<?php header (‘Location:http://суперпродукт.ru/?partner=ваш партнерский номер’); exit(); ?>
[/php]
Если Вас интересует этот метод, на тему редиректов у нас есть отдельная статья.
Плюс в использовании редиректа на php состоит в том, что вы, например, можете прописать в php файле счетчик его загрузок и тем самым вести статистику переходов на партнерский сервис (впрочем, для этого существует и множество других способов).
4. Сервисы сокращения ссылок
Еще более простой и даже в каком-то смысле более честный способ — это использование многочисленных сервисов сокращения ссылок.
Таких сервисов существуют десятки, но наиболее удобным, простым и к тому же не предлагающим к просмотру рекламу является сервис от поисковой системы Google, название которого достаточно легко запомнить: goo.gl. Например, по ссылке http://goo.gl/LHl3M вы попадете на главную страницу нашего сайта.
Как видите, методов для сокрытия ссылки от пользователя существует большое множество, каким из них воспользоваться и стоит ли ими вообще пользоваться — решать Вам!
Как скрыть внешние ссылки при помощи JS

SEO
Для чего скрывать ссылки?
Первый вариант: чтобы скрыть их от индексирования в поисковых системах / чтобы они не передавали вес.
Второй вариант: я скрываю ссылки которые имеют не 200-й ответ (биты ссылки — но они в тоже время рабочие). Часто анализируя сайты видишь внешние ссылки с ответами отличными от 200, например с 403 ответом, чтобы они не сыпались в ошибки аудитора я их скрываю в JS.
Как скрыть ссылку при помощи jQuery
В сети полно способов закрыть ссылки средствами jQuery, рассмотрим самые действенные.
Чтобы приведенные ниже способы работали, у вас должна быть подключена библиотека jQuery.
Без использования структуры <a href=»»></a>
Код ссылки на странице:
Скрипт, который будет обрабатывать ссылку и открывать ее:
В данном случае в коде будет кусок текста (он же анкор) выделенный <span> и отображаться такая «ссылка» будет как обычный текст на странице. Поэтому чтобы такая ссылка была похожа на обычную, придется немного добавить в свой css примерно такие стили:
Альтернативный вариант
Код ссылки на странице:
Скрипт, который будет обрабатывать ссылку и открывать ее:
Отличие этого способа от вышеуказанного в том, что js-скрипт меняет на странице html-код «якобы» ссылки на нормальную ссылку после полной загрузки документа. Поэтому никаких правок в css вносить не придется, а ссылка будет открываться как и обычная.
Скрытие ссылок при помощи чистого JS (без jQuery)
Код ссылки на странице:
Скрипт, который будет обрабатывать ссылку и открывать ее:
Если хотите чтобы ссылка открывалась в этой же вкладке (а не в новой). Замените window.open(link.dataset.url); на location.href = link.dataset.url;
В коде страницы получается просто текст, но если вы кликните на него то переход по ссылке произойдет. Чтобы скрытая ссылка была похожа на обычную ссылку, вам нужно добавить немного CSS, например:
Скрытие ссылок от индексации поисковыми роботами
Чтобы скрыть ссылки от индексации поисковыми роботами:
- выносим скрипт замены ссылок во внешний файл;
- запрещаем индексацию этого файла в robot.txt;
- в контенте используем функцию нашего скрипта, которая будет рисовать нам необходимую ссылку.
Теперь вы знаете как спрятать ссылку в JS. Если вдруг возникли вопросы или один из способов перестал работать, пожалуйся напишите об этом в комментариях.