vpsguru Обновлено 22.07.2026

404 Not Found: что означает эта ошибка и как её исправить на сервере

Обновлено 27 октября 2026 Чтение 10 мин Раздел: Блог VPSGuru: сети, серверы и безопасность сайта простыми словами

Ошибка 404 Not Found появляется, когда сервер не находит запрошенную страницу — из-за опечатки в адресе, удалённого файла или сбитого редиректа. В инструкции разберёте, что означает код 404, чем он отличается от 403 и 503, и какими шагами восстановить страницу или настроить свою страницу-заглушку. Ещё больше практических гайдов по серверам — в разделе Блог, а подобрать стабильный VPS для сайта можно в каталоге тарифов.

404 Not Found: что означает эта ошибка и как её исправить на сервере

Коротко

Главные выводы статьи о теме «Ошибка 404 Not Found» в семи пунктах:

  • HTTP-код 404 входит в группу клиентских ошибок 4xx — наравне с 400, 403 и 410
  • В логах nginx и Apache код ответа фиксируется в access.log вторым числом после метода запроса
  • Кастомная страница ошибки задаётся директивой error_page 404 /404.html; в nginx или ErrorDocument 404 в .htaccess для Apache
  • Google Search Console показывает отчёт «Страница не найдена (404)» отдельно от «Ошибка сервера (5xx)»
  • После сброса кэша CDN изменения на сайте обычно применяются за 5–10 минут
  • Типичная причина 404 на всех страницах WordPress, кроме главной, — сбитые правила ЧПУ в .htaccess
  • Восстановление файла через FTP-клиент занимает 2–5 минут при наличии резервной копии

Что означает ошибка 404 Not Found

Код 404 — это ответ сервера на HTTP-запрос, который означает «ресурс не найден по указанному адресу». Он входит в группу клиентских ошибок 4xx (диапазон 400–499) наравне с кодами 400, 403 и 410. Полная строка ответа выглядит так: HTTP/1.1 404 Not Found, и её видно в консоли разработчика браузера или в логах сервера.

Ошибка 404 появляется не только в браузере. Она встречается при обращении к API — например, когда мобильное приложение или скрипт запрашивает несуществующий эндпоинт, а также при загрузке картинок, скриптов и других файлов на странице. В логах nginx и Apache код ответа фиксируется в файле access.log вторым числом после метода запроса, что удобно для быстрой диагностики. Если хотите разобраться, как формируются такие ответы на уровне протокола, загляните в словарь терминов по сетям и серверам.

Важно не путать 404 с соседними кодами: 403 Forbidden означает, что ресурс существует, но доступ к нему запрещён, а 500 Internal Server Error сигнализирует о сбое на стороне сервера, а не об отсутствии страницы. Google Search Console показывает эти категории раздельно: отчёт «Страница не найдена (404)» отдельно от «Ошибка сервера (5xx)», что упрощает диагностику проблем сайта.

Чтобы не путаться в кодах, держите короткую памятку:

  • 404 — ресурс отсутствует по данному URL
  • 403 — ресурс есть, но доступ ограничен
  • 500 — на сервере произошла внутренняя ошибка
  • 4xx — вся группа клиентских ошибок, включая 400 и 410

Почему сервер возвращает 404: механизм и типичные причины

Когда вы открываете страницу, браузер отправляет серверу GET-запрос с адресом файла или маршрута. Веб-сервер — nginx или Apache — ищет соответствующий файл на диске или правило маршрутизации. Если совпадения нет, сервер формирует ответ с кодом 404 вместо содержимого страницы.

Этот код входит в группу клиентских ошибок 4xx — туда же относятся 400, 403 и 410. Каждый такой ответ фиксируется в access.log вторым числом после метода запроса, поэтому историю 404-ошибок легко найти в логах сервера. Google Search Console собирает их отдельно, в отчёте «Страница не найдена (404)», не смешивая с ошибками 5xx.

Причин у 404 обычно немного, и почти все они на стороне сайта или пользователя. Разобраться, какая именно сработала в вашем случае, помогут шесть типичных сценариев:

  • Опечатка в адресе — лишний символ или неверный регистр в URL.
  • Страница удалена или перенесена без создания редиректа на новый адрес.
  • Настроен неверный редирект, который ведёт на несуществующий путь.
  • Сбиты правила ЧПУ (человекопонятных урлов): типичный случай — все страницы WordPress, кроме главной, отдают 404 из-за повреждённого .htaccess после сброса настроек CMS или обновления плагина.
  • Отключён модуль или плагин, который отвечал за конкретный маршрут.
  • Устарел кэш CDN (сети доставки контента) — браузер получает старую версию страницы, которой уже нет.

Если причина в кэше Cloudflare, изменения на сайте обычно применяются за 5–10 минут после сброса — раньше проверять бессмысленно. Если проблема серьёзнее, разберитесь, как исправить 404 на своём сайте.

Как исправить 404 на своём сайте: пошаговая инструкция

Прежде чем менять код или конфиги, убедитесь, что проблема действительно на стороне сервера, а не в самом запросе. Часто причина банальна: опечатка в адресе, лишний слэш или неверный регистр символов в пути. Только после этого имеет смысл лезть в логи и файлы сайта.

Если URL корректный, ищите причину в логах и на диске: сервер честно записывает каждый ответ клиенту, а файл мог пропасть или сместиться при обновлении темы или плагина. Как найти и устранить причину 404 по шагам:

  1. Проверьте адрес вручную: скопируйте URL из ошибки, сверьте регистр символов и лишние символы вроде пробела или двойного слэша.
  2. Откройте лог ошибок: /var/log/nginx/error.log для nginx или /var/log/apache2/error.log для Apache — там видно, какой файл сервер не нашёл.
  3. Подключитесь по FTP-клиенту (протокол передачи файлов, порт 21) и проверьте, существует ли нужный файл в каталоге сайта.
  4. Если файла нет, восстановите его из резервной копии — при наличии бэкапа это займёт 2–5 минут.
  5. Проверьте правило ЧПУ (человекопонятный урл) в файле .htaccess для Apache или блок location в конфиге nginx — на WordPress 404 на всех страницах, кроме главной, почти всегда означает сбитые правила ЧПУ.
  6. Если страница переехала на новый адрес, настройте 301-редирект: директива RewriteRule в .htaccess или return 301 в блоке server nginx.
  7. Сбросьте кэш CDN (сеть доставки контента) в панели провайдера — изменения обычно применяются за 5–10 минут.
  8. Перезапустите сервер командой systemctl restart nginx (или аналогичной для Apache), чтобы новая конфигурация вступила в силу.
  9. Проверьте результат командой curl -I по адресу страницы — в ответе должен появиться код 200 вместо 404.

Если после всех шагов ошибка сохраняется, а не хватает ресурсов сервера для нормальной диагностики — стоит поменять тариф. Разница особенно заметна при частых деплоях и больших логах, когда нужен запас по диску и оперативной памяти: подобрать VPS с нужными ресурсами.

Терминал с логом ошибок nginx показывает запись с кодом 404
Проверка лог-файла nginx на сервере — так находят причину ошибки 404 (иллюстрация интерфейса)

Перенести сайт на другой сервер

При частых сбоях и повторяющихся 404 после обновлений проще перейти на более надёжный VPS

Открыть рейтинг VPS

Настройка страницы 404: директивы nginx и Apache

Стандартная страница 404 веб-сервера — это белый экран с одной строкой текста. Замените её своей: создайте файл 404.html с логотипом, поиском по сайту и ссылкой на главную, а затем укажите этот файл в конфигурации сервера. Файл должен весить не больше 50–100 КБ, чтобы страница открывалась сразу.

Загрузите HTML-файл (HyperText Markup Language — язык разметки страниц) в корневую папку сайта, например в /var/www/example.ru/. Если вы не работаете с SSH (Secure Shell — защищённый удалённый доступ к серверу), используйте FTP (File Transfer Protocol — протокол передачи файлов): подключитесь к серверу через FileZilla и перетащите файл в нужную папку. На это уйдёт 2–3 минуты.

Главное — чтобы страница отдавала правильный HTTP-код (HyperText Transfer Protocol — протокол передачи данных в вебе). Если вместо 404 сервер отвечает 200 OK, поисковые системы добавляют страницу ошибки в индекс, а Google Search Console помечает такие адреса как «мягкие 404» (soft 404). Чаще всего это происходит в двух случаях: в nginx стоит знак = в строке error_page 404 = /404.html;, а в Apache в ErrorDocument указан полный адрес страницы. Во втором случае сервер отвечает не 404, а переадресацией с кодом 302.

Параметр nginx 1.25 Apache 2.4
Директива error_page 404 /404.html; ErrorDocument 404 /404.html
Где прописать /etc/nginx/sites-available/example.ru, блок server /etc/apache2/sites-available/example.ru.conf или .htaccess
Запрет прямого доступа к файлу location = /404.html { internal; } не требуется
Проверка синтаксиса sudo nginx -t sudo apache2ctl configtest
Применение изменений sudo systemctl reload nginx sudo systemctl reload apache2

Как проверить, что страница 404 работает правильно:

  1. Выполните команду curl -I https://example.ru/net-takoy-stranicy.
  2. Проверьте первую строку ответа: там должно быть HTTP/1.1 404 Not Found, а не 200 OK или 302 Found.
  3. Откройте тот же адрес в браузере и убедитесь, что показывается ваша страница, а не стандартная.
  4. Если сайт работает через CDN (Content Delivery Network — сеть доставки контента), сбросьте кэш и повторите проверку через 5–10 минут.
Браузер показывает кастомную страницу ошибки 404 сайта
Пример кастомной страницы 404, настроенной через error_page в nginx (иллюстрация интерфейса)

Ошибки при работе с 404 и как их избежать

Даже после настройки страницы ошибки владельцы сайтов допускают промахи, которые портят статистику и раздражают посетителей: чаще всего это редирект всех битых адресов на главную и страница 404, которая отдаёт код 200. Часть проблем не видна глазами — нужна проверка кодов ответа и логов, а не просто визуальный осмотр страницы.

Первая ошибка: редирект всех 404 на главную

Все несуществующие адреса ведут на главную страницу вместо релевантного раздела. Посетитель ищет конкретный товар или статью, а попадает на витрину сайта и уходит — так теряется до 70% случайных переходов.

Как решить: вместо общего редиректа настройте переадресацию на ближайшую по смыслу категорию или оставьте корректную страницу 404 с формой поиска.

Вторая ошибка: страница ошибки с кодом 200

Самодельная страница ошибки внешне выглядит правильно, но сервер отдаёт для неё код 200 вместо 404. Такую страницу поисковые системы индексируют как обычный контент, а отчёт Google Search Console «Страница не найдена (404)» её не увидит.

Как решить: проверьте реальный код за 5 секунд командой curl -I — она покажет заголовки ответа без загрузки всей страницы. В логах код ответа смотрите в access.log: он идёт вторым числом после метода запроса в строке лога.

Третья ошибка: неверный регистр в ссылке

Файловая система Linux регистрозависима: Page.html и page.html — разные файлы, отсюда 404 при неверном регистре в ссылке.

Четвёртая ошибка: битые пути после переезда

После переезда на другой сервер часть ссылок из старых закладок и внешних сайтов бьёт мимо новых путей. Включите мониторинг свежих 404 в первые 2 недели.

Пятая ошибка: случайно удалённый файл

Если нужный файл удалили по ошибке, его восстановление через FTP-клиент занимает 2–5 минут при наличии резервной копии.

Регулярно сверяйте список найденных 404-адресов и настраивайте по ним точечные переадресации — это быстрее, чем ждать жалоб от пользователей. Как подобрать VPS с удобным доступом к логам, разберём отдельно.

404 или другой код: чем отличается от 301, 410 и 503

Код 404 входит в группу клиентских ошибок 4xx — наравне с 400, 403 и 410. Он означает: адрес запрошен, но сервер не нашёл по нему контент. Страница может появиться позже, поэтому поисковик проверяет её снова и снова, тратя на это краулинговый бюджет.

410 Gone — более честный код для того, что удалено навсегда. Разница на практике заметна быстро: страницы с 410 Google исключает из индекса ощутимо оперативнее, чем с 404, потому что серверу не нужно перепроверять адрес раз за разом. В Google Search Console оба случая видно в отчёте «Страница не найдена (404)», а ошибки сервера отображаются отдельно, в разделе «Ошибка сервера (5xx)».

301 и 503 решают другую задачу — они не про отсутствие контента, а про его статус. 301 Moved Permanently сообщает, что страница переехала на новый адрес насовсем, и передаёт ему вес. 503 Service Unavailable говорит, что сервис недоступен временно, например на время техобслуживания, и вернётся в течение нескольких часов. Такой код не даёт поисковику повода выбрасывать страницу из индекса.

Разница хорошо видна на примере интернет-магазина с карточками товаров:

  • Товар снят с продажи навсегда, поставок не будет — карточке нужен код 410, чтобы страница быстрее ушла из индекса.
  • Товара временно нет на складе, но он вернётся — карточка остаётся с кодом 200 и пометкой «нет в наличии», ссылки и SEO-вес сохраняются.
  • Раздел каталога переименован — здесь уместен 301 на новый URL, а не 404 или 410.
  • Плановые работы на сервере — на время обслуживания стоит отдавать 503, а не показывать посетителям обычную ошибку.

Выбор кода напрямую влияет на скорость переиндексации и на то, сколько трафика сайт теряет за это время. Если такие ситуации возникают часто, разумнее держать сайт на ресурсах с запасом по производительности — например, посмотреть варианты на странице подобрать VPS для сайта.

Схема сравнения HTTP-кодов ответа сервера 404, 301, 410 и 503
Чем код 404 отличается от 301, 410 и 503

Когда стандартной страницы 404 недостаточно

Ручная проверка ссылок работает для визитки на 20 страниц, но не для каталога с тысячами товаров. Если проверяете больше нескольких сотен URL в месяц — это сигнал переходить на автоматический мониторинг. Отчёт «Страница не найдена (404)» в Google Search Console и аналогичный раздел в Яндекс.Вебмастере показывают битые ссылки без ручного обхода сайта.

Для API-сервисов отдавать HTML-страницу с кодом 404 — ошибка. Клиентское приложение ждёт JSON с телом ошибки: полем error и понятным сообщением, а не разметку, рассчитанную на браузер. Иначе фронтенд не сможет корректно обработать ответ и покажет пользователю пустой экран вместо диагностики.

Отдельный случай — сезонные товары. Если позиция временно отсутствует, но вернётся через 1-2 месяца, отдавать 404 неверно: страница потеряет позиции в поиске. Правильнее оставить карточку с кодом 200 и пометкой «нет в наличии», как в примере выше. Временный редирект с кодом 302 на страницу категории уместен, только если саму карточку на это время снимают с сайта, — после появления товара редирект убирают.

Каким проектам нужен особый подход к ошибке 404:

  • Каталоги и агрегаторы с сотнями и тысячами URL — нужен краулер вроде Screaming Frog плюс регулярная выгрузка из Search Console
  • API-эндпоинты — JSON с телом ошибки вместо HTML-страницы 404
  • Сезонные и временно недоступные товары — код 200 с пометкой «нет в наличии» или 302, если карточку временно сняли с сайта, но не 404
  • Высоконагруженные проекты — мониторинг логов access.log по расписанию, а не разовая сверка

Для проектов такого масштаба важна и сама инфраструктура: чем стабильнее диск и сеть, тем реже 404 возникает из-за таймаутов при генерации страницы. Подобрать конфигурацию под нагрузку каталога можно на странице сравнения тарифов VPS.

Частые вопросы

Что означает ошибка 404 Not Found простыми словами
Это ответ сервера на запрос браузера или приложения о том, что запрошенная страница или файл не найдены по указанному адресу. Сам сервер при этом работает исправно — проблема именно в конкретном URL.
Почему сайт пишет 404, хотя страница точно существует
Чаще всего дело в опечатке в адресе, изменённом URL после редизайна или сбитых правилах ЧПУ в .htaccess. Стоит проверить регистр символов и посмотреть лог сервера — там видно, какой именно путь искал сервер.
Чем 404 отличается от 403 Forbidden
404 означает, что ресурс не найден вообще, а 403 — что ресурс существует, но доступ к нему запрещён настройками сервера. Это разные причины и разные способы исправления.
Что делать, если WordPress выдаёт 404 на всех страницах, кроме главной
Обычно причина в сбитых правилах постоянных ссылок (permalinks). Нужно зайти в настройки CMS и заново сохранить структуру ссылок либо вручную проверить файл .htaccess на наличие блока WordPress.
Можно ли сделать свою страницу для ошибки 404
Да, для этого в конфиге nginx добавляют директиву error_page 404 /404.html, а в Apache используют ErrorDocument 404 /404.html в файле .htaccess. Важно, чтобы такая страница отдавала именно код 404, а не 200.
Влияет ли ошибка 404 на позиции сайта в поиске
Сама по себе ошибка 404 на удалённых страницах — нормальная практика и не наказывается поисковиками. Проблему создают только 404 на страницах, которые должны работать, и большое количество таких ошибок на сайте.
Как найти все страницы сайта с ошибкой 404
Список таких страниц показывают Google Search Console и Яндекс.Вебмастер в разделах диагностики сканирования. Для крупных сайтов удобнее использовать краулер вроде Screaming Frog, который проверяет все ссылки за один проход.
Что делать, если 404 появились после переезда на новый сервер
Нужно проверить, все ли файлы скопированы через FTP-клиент, совпадает ли структура папок и настроен ли конфиг веб-сервера так же, как на старом хостинге. Часто причина — забытый файл .htaccess или другой путь к корню сайта.
Нужно ли делать редирект со страницы, которая отдаёт 404
Если у страницы есть логичная замена — да, стоит настроить 301-редирект на новый адрес. Если страница удалена навсегда и замены нет, правильнее оставить 404 или использовать код 410.
Чем 404 отличается от 503 Service Unavailable
404 сообщает, что конкретная страница не найдена, а сервер в целом работает. 503 означает, что сервер временно недоступен целиком — например, из-за перегрузки или технических работ.

Итоговый чек-лист

Используйте список как порядок действий, когда на сайте появилась ошибка 404: от простой проверки адреса до мониторинга. Пункты расставлены так, чтобы сначала исключить самые частые причины.

  • Проверили точный URL на опечатки и регистр символов
  • Посмотрели лог ошибок сервера и нашли путь, который не находится
  • Убедились, что файл или маршрут действительно существуют на сервере
  • Настроили корректный error_page или ErrorDocument для кастомной страницы 404
  • Проверили через curl -I, что кастомная страница отдаёт код 404, а не 200
  • Настроили 301-редирект там, где у страницы есть логичная замена
  • Подключили мониторинг 404 через Search Console или Вебмастер для крупного сайта

Когда найдёте причину, не забудьте проверить через curl -I код ответа. Страница, которая выглядит как 404, но отдаёт код 200, мешает индексации.

Источники

На сайте есть партнёрские ссылки: если вы оформите заказ по ним, мы получим вознаграждение от провайдера. Это не влияет на цену для вас и на место в рейтинге.