Речь в статье пойдет о том, как использовать rel=”canonical” не только для Html файлов, но и для других типов файлов, таких как, например, pdf. Кстати Google больше не рекомендует использовать robots.txt для ограничения индексации сайта, а рекомендует помечать дублирующийся контент с помощью rel=”canonical”:
При написании аудита сайта, если имеет место дублирование контента страниц сайта в файлах формата pdf, doc и т.п., я рекомендую использовать HTTP-заголовок rel=”canonical” вместо того, чтобы закрывать данные файлы в robots.txt. Сейчас вебмастера используют в основном rel=”canonical” для html страниц. Однако вот список типов файлов, которые индексирует поисковая система Google:
- TeX/LaTeX (.tex)
- Текст (.txt, .text и другие расширения файлов)
- Adobe Flash (.swf)
- Adobe PDF (.pdf)
- Adobe PostScript (.ps)
- Autodesk Design Web Format (.dwf)
- Google Планета Земля (.kml, .kmz)
- GPS eXchange Format (.gpx)
- Hancom Hanword (.hwp)
- HTML (.htm, .html и другие расширения файлов)
- Microsoft Excel (.xls, .xlsx)
- Microsoft PowerPoint (.ppt, .pptx)
- Microsoft Word (.doc, .docx)
- Презентация OpenOffice (.odp)
- Электронная таблица OpenOffice (.ods)
- Текст OpenOffice (.odt)
- Расширенный текстовый формат (.rtf, .wri)
- Масштабируемая векторная графика (.svg)
В том числе исходный код стандартных языков программирования:
- Исходный код Basic (.bas)
- Исходный код C/C++ (.c, .cc, .cpp, .cxx, .h, .hpp)
- Исходный код C# (.cs)
- Исходный код Java (.java)
- Исходный код Perl (.pl)
- Исходный код Python (.py)
- Язык разметки для беспроводных устройств (.wml, .wap)
- XML (.xml)
Для более качественной оптимизации сайтов вебмастерам необходимо научиться использовать HTTP-заголовок rel=”canonical”. Далее будут рассмотрены несколько возможных вариантов передачи rel=”canonical” через HTTP-заголовки.
HTTP-заголовки с использованием php (для html файлов)
HTTP-заголовок rel=”canonical” можно легко передать с использованием php. Для этого необходимо разместить в документе следующий код:
HTTP-заголовок с помощью .htaccess (для любых типов файлов)
HTTP-заголовки rel=”canonical” можно легко передать для любых типов файлов с помощью файла .htaccess. Код передачи HTTP-заголовка rel=”canonical”: При написании имени файла можно использовать следующие спецсимволы: ? - любой символ * - любая последовательность символов. Также можно использовать полноценные регулярные выражения, но перед указанием регулярного выражения необходимо поставить символ ~: Подробнее — httpd.apache.org
HTTP-заголовок rel="canonical" для любых файлов с помощью PHP
Размещаем в .htaccess следующую строку:
RewriteRule ^(.+)\.pdf /pdf.php?file=$1 [L]
В данном примере речь будет идти о pdf файлах. Модифицировать код для других типов файлов не составит труда. Создаем файл pdf.php со следующим кодом:
$path = $_SERVER['DOCUMENT_ROOT'] + $_GET['file'] . '.pdf';if(file_exists($path)) {header('Content-Type: application/pdf');header('Link: <https://www.yoursite.com/>; rel=”canonical”');readfile($path);}else {header('HTTP/1.0 404 Not Found');include($_SERVER['DOCUMENT_ROOT'] . '404.php');}
Как проверять HTTP-заголовки сервера?
Свежее
Обзор изменений в GA4: различие между ключевыми событиями (Key events) и конверсиями (Conversions)
Увидели оповещение в GA4 об изменении в конверсиях? Давайте разбираться что именно изменилось и как это повлияет на вашу аналитику
Как добиться роста органического трафика на 195% за полгода в высококонкурентной нише — кейс BAYADERA
Показываем на практике как повысить видимость сайта и небрендовый органический трафик
Кто такой конечный пользователь, и Почему он важен
Он нужен не только для настройки рекламы, но и при разработке продукта или услуги. Разбираемся, кто он такой и как его найти