Как не отправлять реферер из ссылки в html

Я думаю, что когда-нибудь я увидел способ создания ссылки без отправки страницы, на которой был пользователь. Это возможно? Или нам нужно использовать перенаправитель, чтобы скрыть местоположение предыдущего сайта?

EDIT: Если у вас есть идея для варианта на стороне сервера, чтобы анонимизировать ссылку, пожалуйста.

Ответы

Ответ 1

Отметьте этот раздел в Wiki о скрытии ссылок.

Большинство основных браузеров не отправляют заголовок реферера, когда им предлагается перенаправить, используя HTTP-заголовок "Обновить". Однако этот метод перенаправления обескуражен W3C.

Ответ 2

<a href="example.com" rel="noreferrer">Example</a>

http://www.w3.org/TR/html5/links.html#link-type-noreferrer Ключевое слово noreferrer может использоваться с элементами a и area. Это ключевое слово не создает гиперссылку, но аннотирует любые другие гиперссылки, созданные элементом (подразумеваемая гиперссылка, если другие ключевые слова не создают ее).

Это указывает на то, что никакая информация о реферере не будет пропущена, когда будет следовать ссылка.

Если пользовательский агент следует за ссылкой, определенной элементом a или area с ключевым словом noreferrer, пользовательский агент не должен включать HTTP-заголовок Referer (sic) (или эквивалент для других протоколов) в запросе.

Ответ 4

Нет никакого способа сделать это.

Фактически этот параметр контролируется на стороне клиента. В зависимости от браузера, некоторые просто не отправляют реферирования или подделки.

Вы не должны этого делать.

Но вот 2 подсказки:

  • Используйте страницу редиректора
  • Предложите пользователю функцию копирования/вставки, а затем откройте новое окно, чтобы он мог вставлять и перемещаться.

Ответ 6

Я рекомендую использовать такую ​​услугу, как https://anon.click/ Также в HTML5 существует rel= "noreferrer", который можно использовать.

Ответ 7

Я использую комбинацию нескольких ответов, которые я вижу здесь.

<a href='data:text/html;charset=utf-8,<html><head><meta http-equiv="refresh" content="0;url=http://www.google.com/"></head><body><a href="http://www.google.com/" rel=noreferrer>Open Link</a></body></html>' rel=noreferrer target=_blank>A link without referer</a>

Я тестировал браузер Firefox, Chrome, iOS Safari и Samsung по умолчанию. И это работает.

Даже если браузер отправляет реферер, он не будет веб-сайтом, так как адрес страницы "data:...". Вот почему это гораздо безопаснее, чем создание страницы, которая делает это.

Ответ 8

В зависимости от ваших обстоятельств вы можете использовать что-то вроде anonym.to - если вы доверяете этим сервисам.

Из вашего тега я предполагаю, что вы не хотите использовать (или иметь доступ к) серверные инструменты, такие как PHP. В этом случае это будет сложно. Я не знаю, возможно ли это вообще с помощью только HTML/Javascript.