Заголовок HTTP-ответа Canonical Link удаляется с помощью PHP / Apache

Я пытаюсь вывести HTTP-заголовок, используя PHP, который задает канонический URL-адрес в соответствии с рекомендациями Google: укажите каноническую ссылку в своем HTTP-заголовке в следующем формате:

Link: <http://www.example.com/downloads/white-paper.pdf>; rel="canonical"

Однако заголовок ответа удаляется с результатом

Link: ; rel="canonical"

В качестве теста я удалил левые / правые угловые скобки, и в результате получилось:

Link: http://www.example.com/downloads/white-paper.pdf; rel="canonical"

Что заставляет меня думать, что некоторая мера безопасности (модуль PHP/Apache/Apache??) рассматривает содержимое заголовка как HTML и "помогает", удаляя его.

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

Это тестовый код для иллюстрации того, что я делаю:

<?php
header("link: <https://www.somedomain.com/>; rel=\"canonical\"");
print "this is a test";?>

Список модулей, загруженных в apache:

core_module (статический) log_config_module (статический) logio_module (статический) version_module (статический) mpm_prefork_module (статический) http_module (статический) so_module (статический) alias_module (общий) auth_basic_module (общий) authn_file_module (общий) authz_module (shared) authz_group) shared) authz_user_module (расшаренный) cgi_module (расшаренный) deflate_module (расшаренный) dir_module (расшаренный) env_module (расшаренный) expires_module (расшаритый) setenvif_module (общий доступ) ssl_module (общий доступ) status_module (общий доступ)

Обратите внимание, что suhosin не загружен, так что это может быть исключено. Любая помощь в определении того, что может быть изменением заголовка, приветствуется.

Обновление: я пробовал это на нескольких разных серверах, и результат пока один и тот же.

1 ответ

Ответ на этот вопрос заключается в том, что инструменты, которые я использовал для проверки заголовков, были хуже (возможно, неправильно выходили из заголовков перед их отображением в виде HTML):

В частности, расширение Chrome "CDN Headers & Cookies" и некоторые онлайн-проверки, которые я больше не могу найти.

Инспектор заголовков F12 по умолчанию в Chrome правильно показывает заголовки ответов, извиняюсь, если я потратил чье-то время.

Другие вопросы по тегам