Как найти битые ссылки на сайте и исправить их
Битые ссылки мешают посетителю закончить действие: открыть условия доставки, перейти к услуге, скачать инструкцию или проверить источник в статье. На небольшом сайте проблему иногда замечают случайно. В каталоге или большом блоге ручной просмотр уже не даёт достаточного охвата: один неверный адрес в меню может повторяться на сотнях страниц, а важная ссылка внутри старого материала остаётся незамеченной.
Чтобы найти битые ссылки и исправить их системно, нужен маршрут из пяти шагов: определить охват проверки, собрать адреса и страницы-источники, подтвердить ошибки, расставить приоритеты и проверить результат после изменений. Ниже разобран этот процесс для владельца сайта, редактора и SEO-специалиста. Результатом работы должен стать журнал конкретных исправлений, по которому понятно, что изменилось и какие вопросы ещё требуют решения.
Какие ссылки считать битыми: статус и реальный результат
Битая ссылка не приводит человека к ожидаемому доступному материалу. При этом запись об ошибке в сканере ещё нужно правильно прочитать. Подтверждённая отсутствующая страница, кратковременный сбой сервера и запрет автоматических запросов требуют разных действий. Если объединить их в одну очередь на удаление, можно убрать полезные переходы и оставить настоящую причину неисправности.
| Результат проверки | Что он означает для аудита | Следующий шаг |
|---|---|---|
| 404 или 410 | По адресу не получен существующий материал; 410 указывает на удаление, которое считается постоянным | Подтвердить результат и выяснить, нужен ли материал и есть ли замена |
| 500, 502, 503 и другие 5xx | Ошибка обработки запроса на стороне сервера; она может быть временной | Повторить проверку позже, сопоставить со сбоями сайта |
| 429 или тайм-аут | Ограничение запросов либо превышение времени ожидания | Снизить нагрузку, сохранить время и условия проверки |
| 401 или 403 | Требуется аутентификация либо сервер отказывает в доступе | Уточнить, кому предназначена страница и доступна ли она обычному посетителю |
| Ошибка DNS, TLS или соединения | Не удалось нормально установить связь или защищённое соединение | Проверить адрес, домен и инфраструктуру; не записывать вымышленный HTTP-код |
| 301, 302 и другой рабочий редирект | Есть перенаправление; само по себе оно не делает ссылку битой | Проверить конечную страницу и соответствие обещанному содержанию |
| 200, но пустая или неправильная страница | Технический успех запроса не подтверждает полезность перехода | Проверить содержимое, загрузку и возможную soft 404 |
Значение 401, 403 и 404 определено в стандарте HTTP. В частности, 404 сам по себе не доказывает, что удаление навсегда. Для поиска тоже важны различия: Google отдельно описывает обработку 4xx, 5xx и 429. Не стоит делать SEO-выводы только по общему количеству красных строк в отчёте.
Почему 200 не закрывает вопрос
Если вместо статьи открывается сообщение «Материал не найден» с кодом 200, возможна soft 404. Google рассматривает такие случаи в руководстве по ошибкам обхода. Другая ситуация: ссылка «Условия гарантии» ведёт на работающую страницу о доставке. Это смысловая ошибка, которую проверка HTTP-кодов может не обнаружить. Для важных переходов нужен просмотр конечного материала.
Внутренние, исходящие и входящие ссылки: кто может исправить источник
Сначала разделите найденное по направлению перехода. Это помогает назначить ответственного и избежать бесполезных действий с чужими страницами. Внутренние ссылки соединяют страницы вашего сайта. Исходящие ведут с вашего сайта на другие ресурсы. Входящие размещены на других сайтах и ведут к вам. В интерфейсе Яндекс Вебмастера входящие называются внешними; при передаче задачи лучше явно записать направление.
У внутренней ссылки вы обычно контролируете и источник, и страницу назначения. У исходящей — только источник: можете заменить адрес в статье, но не восстановить чужой сервер. У входящей — только свою сторону перехода. Изменить текст на другом сайте может его владелец. Такое разграничение соответствует справке Яндекса о внешних ссылках, где отдельно описано обращение к владельцу ресурса.
Принадлежность поддомена определяют отдельно. Магазин, блог и справочный центр могут быть частями одного проекта, хотя сканер показывает их в разных группах. Поэтому в журнале полезны два поля: технический тип ссылки и команда, которая управляет страницей. Так ссылка на собственную базу знаний не попадёт по ошибке в очередь задач для сторонних площадок.
Как проверить сайт на битые ссылки с достаточным охватом
Перед запуском зафиксируйте начальный URL, основной хост и включённые поддомены, языковые разделы, глубину проверки и правила работы с параметрами. Укажите, проверяются ли внешние назначения и файлы. Если обход начинается из папки блога, убедитесь, что ограничения не оставляют вне проверки каталог и основные страницы услуг.
Объедините несколько источников URL
Обычный обход идёт по обнаруженным ссылкам. Он не гарантирует, что найдёт страницы, к которым нет пути от начальной точки. Дополните список выгрузкой опубликованных материалов из CMS, актуальной sitemap, адресами из поисковых отчётов и журналов запросов. В руководстве Screaming Frog по сиротским страницам прямо объясняется необходимость дополнительных источников. При этом сама sitemap содержит адреса страниц, а не готовую карту всех ссылок между ними.
Для каждого источника сохраните дату выгрузки. Старый URL из журнала может быть следом давно удалённого материала или случайного запроса. Наличие такого адреса ещё не доказывает, что на сайте сейчас есть битая ссылка. Найдите действующий источник перехода либо пометьте запись как историческую, чтобы не создавать задачи по предположению.
Учтите JavaScript, доступ и ограничения обхода
Сравните представительные страницы: главную, раздел, карточку и статью. Если ссылки появляются после выполнения JavaScript, проверка исходного HTML может их пропустить. Google рекомендует обычный элемент <a href="...">; переходы только через обработчик клика извлекаются ненадёжно. Это разъяснено в рекомендациях по доступным для обхода ссылкам. Рендеринг помогает увидеть динамический HTML, но не воспроизводит автоматически все действия пользователя.
Заранее исключите бесконечные календари, ненужные сочетания фильтров и адреса действий. Не удаляйте все параметры вслепую: параметр может выбирать конкретный товар или документ. Закрытые разделы проверяйте только с согласованным доступом; недоступность для гостя сама по себе может быть штатной. Зафиксируйте, какие состояния авторизации вошли в проверку.
Начните с небольшого представительного раздела и умеренной скорости. Наблюдайте за временем ответа и ошибками, затем расширяйте охват. В настройках SEO Spider предусмотрено управление скоростью, поддоменами и ограничениями обхода; разработчик рекомендует согласовать время и интенсивность с вебмастером. Ускорение не должно превращать проверку в причину новых сбоев.
Инструменты: массовый обход, данные Яндекса и ручная проверка
Для рабочего аудита достаточно нескольких инструментов с разными задачами. Сканер помогает собрать текущие переходы и их источники. Отчёты поисковых систем добавляют найденные ими адреса и историю. Браузер помогает понять, что видит человек. Сопоставление этих результатов надёжнее решения по одному показателю.
Screaming Frog: найти назначения и страницы-источники
После настройки охвата введите начальный адрес в поле Enter URL to spider и запустите обход кнопкой Start. Дождитесь завершения выбранной проверки, затем используйте следующий порядок. Названия основных вкладок приведены в официальном руководстве по поиску битых ссылок.
- Откройте Response Codes и фильтр Client Error (4xx). Отделите 404/410 от отказов доступа и ограничения запросов.
- Выберите проблемный URL в верхней части окна, затем откройте нижнюю вкладку Inlinks.
- Посмотрите From — страницу-источник, To — назначение, а также анкор и тип ссылки.
- Экспортируйте источники вместе с ошибочными адресами. Для внутренних назначений используйте Bulk Export → Response Codes → Internal → Client Error (4xx) Inlinks, как указано в карточке Internal Client Error.
Для внешних назначений актуальная карточка External Client Error указывает ветку Bulk Export → Response Codes → External → Client Error (4xx) Inlinks. В обоих случаях проверяйте, что выгрузка содержит источники, а не только список целей.
Если источником оказывается HTTP-редирект, вернитесь к исходной странице с кликабельной ссылкой: последнее звено цепочки не всегда является местом правки. Серверные ошибки и отсутствие ответа рассмотрите отдельными группами — фильтр 4xx их не заменяет.
Яндекс Вебмастер: дополнить обход реальными находками
В разделе «Неработающие ссылки» данные зависят от известных Яндексу страниц. Часть ссылок может отсутствовать: например, робот не знает источник, переход идёт через промежуточный адрес или ссылка появилась недавно. Отсутствие замечаний в кабинете не доказывает отсутствие ошибок на всём сайте.
Отдельный отчёт «Переходы по неработающим ссылкам» использует обезличенные данные о переходах в Яндекс Браузере. В нём есть вкладки для входящих, внутренних и исходящих ссылок; таблица может содержать источник, назначение, HTTP-статус, анкор и дату проверки. Доступна выгрузка XLS или CSV. После исправления данные исчезают не мгновенно, поэтому сверяйте дату отчёта с собственной повторной проверкой.
Когда полезно проверить битые ссылки онлайн
Онлайн-проверка удобна для первичного обзора публичного сайта. Перед выбором сервиса выясните, показывает ли он страницы-источники, проверяет ли внешние назначения и где заканчивается охват. В публичную форму передавайте только публичные адреса без токенов, персональных данных и секретных параметров. Закрытый раздел нельзя считать проверенным лишь потому, что сервис загрузил страницу входа.
Если внешний сайт возвращает сканеру 403, откройте ссылку обычным способом и оцените доступность для предполагаемого посетителя. Screaming Frog отдельно отмечает такие отказы в своей документации. Сохраните результат как ограничение проверки, если причина неясна; обходить защиту или многократно повторять заблокированные запросы не требуется.
Рабочий журнал: что нужно сохранить, кроме ошибочного URL
Список адресов с 404 показывает симптомы. Для исправления нужен ответ на вопрос «где размещён переход и кто его меняет». Заводите строку для конкретной связи между источником и назначением, а не только для адреса назначения. Затем группируйте строки по общему шаблону, ошибочному URL и ответственному.
| Поле | Что записать | Зачем |
|---|---|---|
| URL источника | Страница, на которой обнаружен переход | Найти место изменения |
| Элемент и анкор | Текст ссылки, кнопка, изображение; меню, подвал или основной текст | Отличить несколько ссылок на одной странице |
| Исходный href | Значение из HTML без ручного исправления | Увидеть опечатку или неправильный относительный путь |
| Абсолютный URL назначения | Адрес после разрешения относительной ссылки | Понять, куда реально ушёл запрос |
| Ответ и конечный URL | HTTP-код или ошибка соединения; итог после редиректов | Отделить неверную ссылку от проблемы дальнейшего перехода |
| Шаблон и масштаб | Компонент CMS, число источников и уникальных целей | Выбрать массовую правку вместо ручного повторения |
| Важность и решение | Затронутое действие, выбранная замена или восстановление | Обосновать очередность |
| Ответственный и проверка | Исполнитель, дата, результат до и после изменения | Принять работу и вернуться к спорным случаям |
Условный пример: на https://example.com/blog/check/ стоит href="prices/". Без переопределения базового адреса браузер разрешит его как https://example.com/blog/check/prices/, хотя автор мог иметь в виду https://example.com/prices/. Правила объясняет документация MDN об относительных URL. Сохранённый исходный href позволяет обнаружить причину, которую скрывает обычный список 404.
Для спорных случаев добавьте короткое подтверждение: где виден неправильный переход, когда получен ответ, какой материал ожидался. Скриншот может помочь, но не заменяет адрес и точное место в шаблоне. Если в выгрузке нет исходного href, дополните его вручную на проверенных примерах, а не подставляйте абсолютный URL в оба поля.
Какие битые ссылки исправлять в первую очередь
Очередность определяйте по последствиям для посетителя, масштабу размещения и ценности материала. Большое число ошибок в архиве не должно отодвигать единственную неисправную кнопку заявки. Сначала объедините повторения, затем согласуйте приоритеты с владельцем раздела.
| Приоритет | Примеры | Что сделать |
|---|---|---|
| Немедленно | Ссылка на заказ, запись, оплату или важные условия блокирует действие; ключевой раздел массово недоступен | Подтвердить сбой, восстановить рабочий маршрут и проверить сценарий |
| Высокий | Неверное меню, хлебные крошки, общий блок карточек; важная инструкция недоступна | Исправить компонент или адрес и проверить все места его использования |
| Плановый | Единичная ссылка в старой статье, необязательный внешний пример | Найти равноценную замену и обновить текст |
| Нужна проверка | Разовый тайм-аут, 429, отказ сканеру или находка только в старом отчёте | Выяснить фактическое состояние до удаления ссылки |
Число размещённых ссылок и число уникальных неработающих целей — разные показатели. Один адрес в общем меню создаёт много переходов, но может требовать одной правки. Напротив, несколько ссылок в разных статьях могут вести к разным исчезнувшим документам и требовать редакторского поиска для каждого. Для оценки работ нужны оба числа и количество затронутых шаблонов.
Дополните приоритет данными о востребованности страниц и известных переходах, если они доступны. Нулевое число зафиксированных кликов не доказывает бесполезность ссылки: измерение может быть неполным. Цель проверки — восстановить понятные маршруты и устранить воспроизводимые ошибки. Обещать конкретный рост позиций или выручки по числу исправлений оснований нет.
Как исправить или удалить битые ссылки по причине ошибки
Перед массовым изменением подтвердите решение на нескольких представительных примерах. Сохраните перечень затронутых страниц и предыдущие значения. У исправления должен быть понятный смысл: человек после клика получает именно то, что обещает текст ссылки.
Опечатка, неправильный путь или ошибка шаблона
Если нужная страница существует, исправьте href в источнике: адрес в редакторе, поле меню, настройку блока или шаблон. Проверьте регистр символов, разделители, лишнюю часть пути и параметры. Не создавайте новую страницу под каждой случайной опечаткой только ради исчезновения ошибки из отчёта.
Когда один неверный URL повторяется в меню или общем блоке, меняйте общий источник. После публикации проверьте несколько страниц разных типов, включая вложенные. Ручная правка отдельных копий может оставить остальные переходы неправильными, а последующая сборка сайта — вернуть ошибку. У CMS также может быть отдельная мобильная навигация: её стоит включить в приёмку.
Полезный материал исчез или переехал
Если документ нужен посетителям и был удалён случайно, рассмотрите восстановление по исходному адресу. Сначала проверьте актуальность содержания и основания для удаления. Восстановленная устаревшая инструкция может оказаться хуже понятного сообщения о недоступности.
При постоянном переносе на равноценную страницу согласуйте соответствие старого и нового адресов, настройте релевантное перенаправление и обновите внутренние ссылки на конечный URL. Google рекомендует обновлять ссылки при переносе и избегать перенаправлений на нерелевантную главную. Для этой задачи достаточно карты соответствий; конкретная конфигурация редиректов зависит от проекта.
Если страница окончательно удалена и аналога нет, 404 или 410 могут быть правильным ответом. Уберите ведущие к ней действующие внутренние ссылки либо перепишите контекст. Не перенаправляйте все отсутствующие адреса на главную: посетитель потеряет обещанный материал, даже если конечная страница ответит 200.
Внешний источник больше не работает
Проверьте, сохранился ли документ на официальном сайте издателя под другим адресом. Оцените сам материал: совпадают ли тема, версия, дата и утверждение, для которого он указан. Работающая главная страница организации редко заменяет конкретную инструкцию или исследование. Если подходящего источника нет, удалите ссылку и переработайте предложение, сохранив понятный смысл.
Особенно внимательно проверяйте старые домены: технически доступный сайт может уже принадлежать другому владельцу и содержать совершенно иной материал. Не считайте восстановление кода 200 достаточным основанием оставить такую ссылку. Если ссылка подтверждала важный факт, найдите новый источник либо пересмотрите сам факт.
Ошибка временная или находится вне редакторской зоны
При массовых 5xx, DNS-ошибках или сбоях TLS передайте данные администратору: адреса, время, инструмент и повторяемость. Удаление ссылок не устраняет неисправность инфраструктуры. Google отдельно рассматривает сетевые и DNS-ошибки, при которых HTTP-ответ может вообще не поступить. После восстановления доступности повторите проверку.
Если ошибочная входящая ссылка размещена на чужом сайте, попросите его владельца обновить адрес. На своей стороне можно восстановить нужный материал или организовать релевантный переход, когда это оправдано. Собственный сканер не удаляет чужие ссылки. Пометка «обращение отправлено» также не означает, что исправление уже опубликовано.
Якоря, mailto, tel и ошибки ресурсов
Ссылка /guide/#delivery может открыть страницу с 200, но не привести к нужному разделу, если элемента с id="delivery" больше нет. Серверный статус не проверяет существование якоря. В Screaming Frog для этого предусмотрены Crawl Fragment Identifiers в Config → Spider → Advanced и фильтр URL → Broken Bookmark. Возможность и порядок работы описаны в официальной инструкции по проверке якорей; доступность настройки зависит от лицензии.
Исправляйте согласованно адрес фрагмента и идентификатор раздела. После изменения проверьте переход кликом: нужный заголовок должен быть виден, а содержание соответствовать анкору. В динамических интерфейсах отдельно проверьте появление раздела после загрузки. Обнаружение идентификатора в HTML не гарантирует, что пользователь удобно доберётся до него.
mailto: и tel: используют специальные схемы, поэтому проверять их как обычные HTTP-адреса некорректно. Сверьте почту и номер, синтаксис и поведение на целевых устройствах. Примеры и различия приведены в справке MDN по ссылкам. Изображения, JavaScript и CSS выделите в отдельную группу ресурсов: их недоступность может ломать отображение или действие кнопки, даже когда сама HTML-страница открывается.
Повторная проверка: как принять исправления
После публикации выполните повторный обход с сопоставимыми настройками: теми же стартовыми адресами, поддоменами, режимом рендеринга и правилами исключений. Если охват изменился, отметьте это в отчёте. Иначе уменьшение числа ошибок может объясняться тем, что часть страниц просто перестала проверяться.
- Проверьте исходные страницы: неверный href действительно заменён, а общий компонент обновился во всех нужных разделах.
- Проверьте конечные адреса: статус ожидаемый, материал правильный, дополнительные переходы не приводят к ошибке.
- Пройдите важные сценарии в браузере: навигацию, открытие инструкции, переход к целевому действию.
- Сохраните результаты до и после, дату публикации и оставшиеся исключения с объяснением.
Положительный пример: пункт «Доставка» ведёт прямо на актуальные условия, работает в основной и мобильной навигации, источник больше не содержит старого адреса. Отрицательный пример: ошибку скрыли общим редиректом на главную, а текст ссылки остался прежним. Для корректно удалённой страницы проверка тоже должна быть осмысленной: сам старый URL может продолжать отвечать 404/410, но активных внутренних ссылок на него уже нет.
Как поддерживать ссылки после публикаций и обновлений
Включите проверку ссылок в выпуск новых материалов, изменение меню, удаление товаров и перенос страниц. Для сайта с частыми обновлениями полезны короткие проверки изменённых разделов между более широкими аудитами. Периодичность выбирайте по темпу изменений и важности пользовательских действий; универсального интервала для всех проектов нет.
Назначьте владельца журнала, чтобы новые находки не терялись между редактором, SEO-специалистом и разработчиком. Отдельно отмечайте повторные ошибки после уже принятых исправлений: они могут указывать на неверную генерацию адресов или процесс публикации. Храните согласованные исключения с причиной и датой следующей проверки, чтобы временный отказ внешнего сайта не оставался без внимания бесконечно.
Что передать исполнителю для понятной оценки работ
В задании укажите домен и охват, приложите журнал с источниками и назначениями, выделите ключевые пользовательские действия. Попросите разделить работы на редакторские изменения, исправление шаблонов, восстановление материалов и задачи инфраструктуры. Для неоднозначных адресов сначала согласуйте решение; автоматическая замена всех ссылок по одному признаку может затронуть рабочие переходы.
Критерий приёмки сформулируйте заранее: подтверждённые внутренние ошибки устранены в согласованном охвате, важные маршруты проверены, внешние ограничения и намеренно удалённые URL объяснены. Итоговый журнал должен показывать, кто изменил источник, что стало назначением и чем подтверждён результат. Так понятны и объём работы, и причины оставшихся записей.
Сохраните журнал исправлений и включите повторную проверку важных переходов в выпуск обновлений. Чтобы дополнить эту работу регулярным контролем доступности сайта, оцените SiteGuard как сервис мониторинга для своего проекта.
Частые вопросы о битых ссылках
Можно ли найти все битые ссылки одним сервисом?
Полнота зависит от охвата, доступности страниц, JavaScript и источников адресов. Обход от главной не гарантирует обнаружение сиротских страниц и всех состояний интерфейса. Совместите текущий обход с выгрузками CMS и поисковыми отчётами, а важные сценарии проверьте вручную.
Нужно ли удалять каждую ссылку, которая попала в отчёт 4xx?
Сначала разберите конкретный статус и назначение страницы. Подтверждённую ошибочную ссылку исправляют или убирают по смыслу. Отказ сканеру, ограничение запросов и требование входа проверяют отдельно. Простое удаление всех строк из отчёта не является исправлением сайта.
Почему ссылка работает в браузере, но сканер показывает ошибку?
Условия запросов могут различаться: авторизация, ограничения автоматического доступа, время проверки или состояние сервера. Зафиксируйте различие, оцените доступность для обычного посетителя и согласуйте проверку своего ресурса с администратором. Для чужого сайта соблюдайте предусмотренные ограничения.
Нужно ли менять ссылку, которая проходит через рабочий редирект?
Такой переход не обязательно битый. Если внутренняя ссылка ведёт на материал, который окончательно переехал, разумно обновить её на актуальный конечный адрес. Сначала убедитесь, что новая страница соответствует анкору и сохраняет нужный раздел или параметры.
Как понять, что работа закончена, если Яндекс ещё показывает ошибки?
Сравните дату находки с датой исправления, проверьте текущий источник и назначение. Поисковому отчёту нужно время на обновление. Приёмку проводите по воспроизводимому текущему результату, сохраняя запись о старой находке до следующей проверки.