Заголовок 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 правильно показывает заголовки ответов, извиняюсь, если я потратил чье-то время.