Error int Не удалось установить политику referrer

Я получаю следующую ошибку в моей консоли chrome для сайта Wordpress, над которым я работаю.

Не удалось установить политику реферера: значение ' http://example.com/comic/ ' не является одним из 'всегда', 'по умолчанию', 'никогда', 'без реферала', 'без реферала-при-понижении ',' origin ',' origin-when-crossorigin 'или' unsafe-url '. Политика рефералов была оставлена без изменений.

Ссылка на эту строку в <head> HTML-документа...

<meta name="Referrer" content="http://example.com/comic/" />

Я просматриваю страницу через http, а не через https.

Что является причиной этой проблемы и как я могу это исправить?

Ответ 1

Перейдите в ваш файл .htaccess и измените следующее:

Header set Referrer-Policy ""

в

Header set Referrer-Policy "origin"

Это должно решить проблему.

Причина более чем вероятна, потому что у вас нет правильных прав доступа к вашему файлу .htaccess, который позволяет w3tc вносить необходимые изменения.

Ответ 2

Вот определение, взятое из спецификации:

Политика реферера изменяет алгоритм, используемый для заполнения заголовка Referer при выборке подресурсов, предварительной выборке или выполнении навигации. Каждый объект настроек среды имеет алгоритм получения политики реферера, который используется по умолчанию для всех запросов с этим объектом настроек среды в качестве клиента запросов.

Таким образом, политика рефералов связана с тем, какую информацию (связанную с URL) браузер отправляет на сервер для извлечения внешнего ресурса.

Параметры для атрибута content перечисленные в спецификации:

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

  • no-referrer-when-downgrade не отправляет заголовок Referrer на URL, не прошедший аутентификацию (если URL-адрес https ссылается на URL-адрес http, заголовок не отправляется)

  • Политика same-origin указывает, что полный URL, выделенный для использования в качестве источника ссылки, отправляется в качестве информации источника при выполнении запросов того же источника от конкретного клиента запроса. в то время как запросы разных источников не будут содержать информацию о реферере.

  • origin отправляет схему, хост и порт (в основном, субдомен) без полного URL в качестве источника ссылки, то есть https://moz.com/example.html просто отправит https://moz.com для всех.

  • origin-when-cross-origin отправляет формат, описанный в origin в cross-origin, тогда как полный разделенный URL отправляется тем же запросам источника.

  • Политика unsafe-url указывает, что полный URL-адрес, выделенный для использования в качестве реферера, отправляется вместе с запросами перекрестного происхождения и запросами того же происхождения, сделанными от конкретного клиента запроса.
    это небезопасно, поскольку утечка источников и путей от ресурсов, защищенных TLS, к небезопасным источникам.

  • Пустая строка "" не соответствует политике реферера, вызывая откат к политике реферера, определенной в другом месте, или в случае, когда такая политика более высокого уровня недоступна, по умолчанию no-referrer-when-downgrade.

  • always ведет себя как unsafe-url.

Ответ 3

вы можете вручную найти и изменить в файле .htaccess следующее:

<IfModule mod_headers.c>
    Header set Referrer-Policy ""
</IfModule>

в

<IfModule mod_headers.c>
    Header set Referrer-Policy "origin"
</IfModule>

Ответ 4

Консоль Chrome Inspection показала мне ту же ошибку для моих сайтов Wordpress, на которых установлен W3 Total Cache. "Не удалось установить политику реферера: значение" "не является ни одним из" без реферрера "," без реферала-при понижении "," источника "," происхождения-когда-кросс-происхождения ""

и я попытался обновить файл .htaccess, как указано в ответе выше. Это исправило ошибку Chrome Inspection Console, но вернулось через несколько секунд.

Проверка панели управления общей производительностью кэша W3 → Браузер Cache-> Referrer Policy-> Директива, эта запись отображалась пустой.

Выбор 'origin' из выпадающего списка привел к обновлению .htaccess с тем же значением 'origin' W3 Total Cache Pluginn Console

Ответ 5

"Referer" как заголовок пишется без двойного R. Возможно, с двойным R, оно соответствует другому заголовку, чем тот, который вы имеете в виду.