Как найти и удалить битые ссылки на сайте?
Приветствую вас, друзья. Сегодня речь пойдет о битых ссылках. Уже давно не секрет, что наличие битых ссылок на сайте может значительно понизить ваш сайт в поиске. А появиться эти ссылки могут самым неожиданным образом, но об этом чуть позже, эта статья довольно объемная, поэтому сначала небольшое содержание статьи:
Что такое битые ссылки и зачем их удалять?
Как проверить наличие битых ссылок в Яндекс и Google?
Как найти и удалить битые ссылки на WordPress?
Как закрыть битые ссылки через редирект 301?
Что такое битые ссылки
Битые ссылки, или как их иногда называют – мертвые ссылки, это ссылки по которым невозможно никуда перейти. То есть вы кликаете на нее, а попадаете на страницу ошибки 404, которая означает, что такой страницы не существует.
Битые ссылки бывают внутренние и внешние. Внутренние, это те, которые должны вести на другую страницу этого же сайта. А внешние, должны вести на другой сайт.
Зачем следует удалять битые ссылки
Роботы поисковых систем , проиндексировав веб страницу, переходят по ссылкам, которые содержаться на этой странице (разумеется если она не закрыта).
При переходе по ссылке, роботы ПС надеются увидеть код ответа HTTP сервера – 200 ОК. Это означает, что все отлично , такая страница существует, довольны все – роботы поисковых систем, пользователи сайта и администрация. Но когда при переходе по ссылке, поступает ответ — 404 (страница не существует), и при этом нет никаких указаний, что по данной ссылке не стоит переходить, у поисковых систем падает уровень доверия к вашему сайту, так как вы предоставляете недостоверную информацию.
Но давайте отбросим мнение поисковых систем, и взглянем на это глазами обычного пользователя. Представьте, что вы ищете какую-то информацию, например базу Dofollow блогов. Вы зашли на какой-то сайт, где есть список со ссылками на подобные блоги, переходите по одной ссылке, а в ответ – ошибка 404, вы кликаете по другой, та же ситуация. Уверен, что вы сразу закроете этот сайт, и начнете искать другие подобные сайты, на которых ссылки рабочие.
Исходя из этого, думаю, догадаться несложно, что чем больше битых ссылок у вас на сайте, тем меньше уровень доверия к нему со стороны поисковых систем и обычных пользователей.
Как проверить наличие битых ссылок в Яндекс и Google
Чтобы проверить наличие битых ссылок в Яндекс Вебмастере, вам нужно в меню выбрать раздел «Исключенные страницы». И перед вами предстанет список всех ссылок, которые Яндекс считает мертвыми.
Теперь наша задача определить где конкретно на сайте присутствует эта мертвая ссылка. Для этого кликните по ссылке, которую я отметил на скриншоте, и Яндекс покажет вам источник битой ссылки.
А зная источник, мы можем перейти в админпанель и отредактировать или удалить эту самую ссылку.
В Google Webmasters принцип похожий. В меню нужно выбрать раздел «Ошибки сканирования», и перейдя по ссылке «не найдено», вы увидите ссылки, которые Google считает мертвыми или битыми.
Но Google в отличии от Яндекса, показывает не только внутренние мертвые ссылки, но и внешние, те которые ведут на ваш сайт.
Здесь же можно указать поисковому роботу Google, что ссылка исправлена и доступна по указанному адресу, отметив ее галочкой.
Кликнув по ссылке, вы сможете увидеть подробную информацию:
1) Сведения об ошибке – отображается причина, почему Google считает данную ссылку битой;
2) В файлах Sitemap – наличие ссылки в карте сайта XML;
3) Ссылающиеся домены – список страниц, которые ссылаются на данную «битую» ссылку;
Как найти и удалить битые ссылки на WordPress
Проверка битых ссылок в Google и Яндекс вебмастере, конечно хороший способ, но для сайтов, работающих на CMS WordPress есть гораздо лучшее решение.
Я пользуюсь плагином Broken Link Checker. Этот плагин находит все битые ссылки на сайте – внутренние и внешние, в тексте и в изображениях, в сайдбаре и в комментариях. Кроме этого, с помощью плагина Broken Link Checker, можно не редактирую код страницы, исправить или удалить ссылку за считанные секунды.
Установка плагина стандартная. У него масса настроек, сейчас я подробно расскажу о них.
После установки и активации плагина, в настройках вашей админки появиться раздел «Проверка ссылок». В принципе настроек по умолчанию уже хватает, но вы можете перестроить их на свое усмотрение.
Я пользуюсь версией плагина 1.9.4.2, и на этой версии у плагина Broken Link Checker пять разделов настроек:
General. Здесь можно указать периодичность автоматической проверки битых ссылок и настроить уведомление по e-mail о нерабочих ссылках.
Look For Links In. Указываются разделы, которые следует проверять на наличие битых ссылок – страницы, комментарии и т. д.
Which Links To Chek. Можно указать ссылки какого рода следует искать – HTML, в изображениях, во встроенных видеороликах и т. д. Так же можно указать исключения.
Protokols & APIs. Настройка инструмента, на основе которого плагин будет определять что ссылка не рабочая. Лучше оставить по умолчанию этот параметр.
Дополнительно. В дополнительных настройках можно указать максимальное время поиска ссылок, время ответа сервера и множество других настроек. Я советую оставить их по умолчанию.
После того, как плагин Broken Link Checker установлен, активирован и настроен, он начнет поиск всех битых ссылок на вашем сайте, а админке WordPress появиться окно, которое будет всегда уведомлять вас о битых ссылках. Кликнув по указанным ссылкам, можно их отредактировать или удалить, не ковыряя код.
Я после установки этого плагина, обнаружил, что у меня на блоге около 50 битых ссылок в комментариях. Это произошло из-за того, что блоги некоторых комментаторов, ссылку на которые они оставляли в подписи, просто исчезли.
Еще одним плюсом этого способа поиска ссылок, является то, что вы сможете увидеть все ссылки – открытые и заключенные в атрибут rel=»nofollow», что недоступно в Google и Яндекс вебмастере.
Как закрыть битые ссылки через редирект 301
Если по какой-то причине вы не можете удалить битую ссылку, или просто не хотите ее удалять, можно сделать перенаправление на другую страницу. Делается это очень просто.
В файл .htaccess нужно прописать редирект, чтобы принудительно переправлять пользователей и роботов с несуществующей страницы на любую другую.
Делается это следующим образом:
1. Скачивается файл .htaccess с хостинга на компьютер.
2. Копируется запись этого файла в блокнот.
3. Перед записью # BEGIN WordPress прописывается редирект 301 в следующем формате:Redirect 301 /bitaya-ssylka
При этом я переправил пользователя, пытающегося перейти по битой ссылке на главную страницу.
В итоге ваш файл .htaccess должен выглядеть примерно так:
# BEGIN McHost Redirect 301 /admin/ /wp-admin/ # END McHost Redirect 301 /bitaya-ssylka # BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteRule (.+)/feed /$1 [R=301,L] RewriteRule (.+)/comment-page /$1 [R=301,L] RewriteRule (.+)/trackback /$1 [R=301,L] RewriteRule (.+)/comments /$1 [R=301,L] RewriteRule (.+)/attachment /$1 [R=301,L] RewriteCond %{QUERY_STRING} ^attachment_id= [NC] RewriteRule (.*) $1? [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
Но он может немного отличаться если вы используете другой движок. Если что-то осталось непонятным, можете задать вопрос в комментариях, с удовольствием отвечу на него.
Как видите, способов избавиться от битых ссылок несколько, выбирайте, что вашей душе угодно 🙂
Я давно пользуюсь плагиним Broken Link Checker для нахождения битых ссылок. Еще советую для полного анализа блога и нахождения на нем битых ссылок, использовать программу XENU.
Привет, Алексей. Тоже наслышан о XENU, но не пробовал. Воспользуюсь твоим советом 😉
Здравствуй, Андрей! С Новым тебя! Я то же проверяю плагином Broken Link Checker. Отлично работает. Можно периодически его активировать, а после проверки отключать.
Привет, Егор. С Новым годом!
Я так и делаю, раз в месяц активирую, а после проверки отключаю.
Привет Андрей! Не хочу повторяться, просто хотел написать слово в слово Алексея Кобзарева. С помощью xenu я нашел несколько битых ссылок, которые плагин не нашел.
Кстати, на скрине видно что 422 ссылок не найдено.Это у тебя так, или скрин другого сайта? Если это твой, то….УХ!!! 🙁
Привет, Игорь. Хм… интересно, как это плагин не нашел, может не настроен? Или в каких-то файлах были ссылки, которые плагин не может отследить? У меня он все находит.
На скрине, действительно мой блог. Часть ссылок, это висят остатки дублей, которые я закрыл, а другая часть, моя вина. Помнишь мой блог был недоступен пару недель, так вот гугл выкинул некоторые страницы из индекса, но уже все вернул 🙂
Теперь понятно, а то я подумал, что ты так забросил блог 🙁 Мне его даже жалко стало 🙂
По поводу ссылок…здесь два варианта:
1) Плагин у меня не настроен (это я проверю позже)
2) Попробуй скачай прогу и проверь (ведь ты же до сих пор на пробовал)
Так вот, ты проверь у себя, а я у себя(после настройки плагина) и потом сверимся, кто прав, а кто нет 🙂
ОК таки сделаем 😉
Только что проверил блог плагином. Нашел 3 битых ссылки. Исправил 😉
В этом плагине, в самой правой вкладке есть «ядерный запуск». Я иногда его запускаю на время проверки. Он обнуляет свою базу и проверяет весь сайт с нуля.
Хм… я как то даже не обращал на это внимания, спасибо, Егор!
Быстро и удобно 🙂
А что лучше использовать плагин или сделать страницу 301!?
Лучше плагин, если блог на WordPress. Редирект желательно использовать только если нельзя изменить ссылку.
Тогда будем экспериментировать, битых ссылок многовато нашёл!
Андрей, скажи, а вот если например я ставил ссылку на какой то сайт и он перестал существовать уже то это же тоже будет как битая ссылка или я что то путаю?
Да, это будет битая ссылка. Кстати, я заметил, что у тебя ссылка на SEOSPRINT битая. Он кажеться накрылся.
Я еще до сих пор не разу не проверял свой блог на битые ссылки, наверное если сделаю проверку то найдется не мало.
Думаю, что да. В комментариях точно найдешь.
Я использую XENU для нахождения битых ссылок, но и Broken Link Checker тоже отличный. Если следить за всеми ссылками на сайте, то возможно улучшить его индексирование и ранжирование.
Я использую audit.megaindex.ru для поиска битых ссылок, так как для Maxsite CMS нет такого плагина, а о том, что в исключённых страницах показываются битые ссылки, не догадывался или забыл об этом.
P. S. Идея для статьи: сервисы по поиску битых внешних ссылок, которые размещены на сайте.
Спасибо за подробную статью, как удалить битые ссылки с сайта WordPress. Я установила плагин, не успела еще и моргнуть глазом, как он стал считать мои ссылки. Прислал мне сообщение на почту с результатом. В настройках уже все оказалось так, как вы описываете в статье. В итоге -56 штук умерших. 94 — перенаправлений (301 — ок). Из них оставила 86 перенаправлений (пока не поняла — почему так произошло. Но и то это все моя перелинковка).
Рад, что информация оказалась полезной.
Это только начало 🙂 со временем битых ссылок будет больше. Многие комментаторы забрасывают свои блоги.