404 not found error: what it is and how to fix it
Содержание:
- Обзор
- Почему пишет страница не найдена?
- Что за ошибка 404 Not Found ?
- Что такое 404 ошибка?
- Обзор
- Причины возникновения
- Summary
- Как исправить и что делать?
- Как исправить «404 Not Found Nginx»?
- Что означает ошибка 404?
- Мягкие ошибки 404
- Редактируем страницу 404
- Как включить режим отладки Nginx?
- Как изменить страницу с ошибкой 404 на WordPress?
- Что, если Вы владелец сайта на котором ошибка 404?
Обзор
При обмене данными через HTTP сервер должен отвечать на запрос, такой как запрос веб-браузера для веб-страницы , с числовым кодом ответа и необязательным, обязательным или запрещенным (в зависимости от кода состояния) сообщением. В коде 404 первая цифра указывает на ошибку клиента, такую как неверно введенный унифицированный указатель ресурса (URL). Следующие две цифры указывают на конкретную обнаруженную ошибку. Использование трехзначных кодов в HTTP аналогично использованию таких кодов в более ранних протоколах, таких как FTP и NNTP . На уровне HTTP за кодом ответа 404 следует удобочитаемая «фраза причины». Спецификация HTTP предлагает фразу «Не найдено», и многие веб-серверы по умолчанию создают HTML-страницу, которая включает как код 404, так и фразу «Не найдено».
Ошибка 404 часто возвращается, когда страницы были перемещены или удалены. В первом случае лучше использовать сопоставление URL- адресов или перенаправление URL-адресов , возвращая ответ 301 Moved Permanently, который можно настроить в большинстве файлов конфигурации сервера, или путем перезаписи URL-адресов ; во втором случае нужно вернуть 410 Gone. Поскольку эти два параметра требуют особой конфигурации сервера, большинство веб-сайтов их не используют.
Ошибки 404 не следует путать с ошибками DNS , которые появляются, когда данный URL ссылается на несуществующее имя сервера. Ошибка 404 означает, что сам сервер был найден, но ему не удалось получить запрошенную страницу.
Почему пишет страница не найдена?
И на этот вопрос есть несколько ответов.
- Во-первых, пользователь неверно ввел адрес в строку браузера: забыл символ, букву, цифру итд. Сервер запрос получил, но вот найти такую страницу не смог.
- Во-вторых, сбои с правильным отображением могут происходить из-за нарушений сеансов связи.
- В-третьих, ошибка not found может появиться в случае некорректного функционирования самого сервера, который выдает такой месседж даже при нормально работающем сайте. Такое встречается крайне редко и связано с вирусными атаками.
- В-четвертых, код ошибки 404 означает, что на сайте есть физически несуществующая страница.
Раскладываем на слагаемые
Мало кто знает о том, что каждая цифра в 404 имеет свою символику. Первая четверка повествует о том, что поисковый запрос занял очень много времени или сам пользователь допустил ошибку и неверно ввел url. Ноль говорит о синтаксической ошибке, а оставшаяся четверка указывает на то, что запрошенный источник не был найден.
Кстати, мы занимаемся доработками сайта!
В большинстве случаев это пугает пользователей, поэтому важно по максимуму сделать ее привлекательной, чтобы посетитель не ушел сразу, а продолжил свое путешествие по вашему сайту в поисках нужной информации. Но многие разработчики не уделяют должного внимания этой ошибке и поэтому теряют пользователей
Что за ошибка 404 Not Found ?
Всякий раз, когда вы или один из ваших посетителей посещают ваш веб-сайт, ваш браузер отправляет запрос на веб-сервер и получает обратно данные, включая то, что называется HTTP-заголовком. Заголовок HTTP включает коды состояния HTTP, чтобы объяснить «что произошло» с запросом.
В большинстве случаев запрос работает отлично, и вы никогда не увидите код состояния HTTP ( если только не посмотрите ). Но если что-то пойдет не так , ваш веб-браузер обычно отображает сообщение с кодом состояния HTTP, чтобы указать точную проблему.
Так же , как и другие сообщения об ошибках ( 500 ERROR , 502 ERROR , 504 ERROR и т.д.), Ошибка 404 Not Found является результатом этого процесса.
Что в действительности означает ошибка 404?
По сути, это означает, что клиент ( ваш веб-браузер или ваш посетитель ) смог успешно подключиться к хосту ( серверу вашего веб-сайта ), но не смог найти фактический запрашиваемый ресурс ( например, конкретный URL-адрес или имя файла). ).
Например, если кто-то пытается получить доступ, но у вас нет контента с этим слагом . Посетитель увидит ошибку 404, поскольку, даже если ваш веб-сервер работает нормально, запрошенный ресурс не существует.
Это не просто сообщения или страницы, любой отсутствующий ресурс может вызвать ошибку 404 на сервере, такие как отсутствующий файл изображения, отсутствующий JavaScript, отсутствующий CSS и т. Д.
Причины ошибки 404 WordPress?
Если вы видите эту ошибку на всем контенте вашего сайта, это, как правило, связано с проблемой постоянных ссылок вашего сайта WordPress . Однако, если вы видите его только на отдельных частях контента, скорее всего, это связано с тем, что вы изменили часть контента без настройки перенаправления.
Например, иногда человек может просто ввести неправильный URL в адресную строку. В этом случае они все равно увидят ошибку 404, но в этом случае нет реальной проблемы с настройкой вашего сайта. Это действительно желаемый ответ, и вы можете создать свою собственную страницу 404, чтобы помочь посетителям попасть в нужное место ( мы покажем вам, как это будет сделать, позже ).
Ошибка 404 Non Found, варианты сообщений.
Поскольку разные браузеры по-разному отображают сообщения об ошибках, вы можете увидеть разные сообщения об этой ошибке. Другие распространенные варианты включают в себя:
- “Error 404”
- “404 Not Found”
- “HTTP Error 404”
- “Not Found”
- “Page Not Found”
- “The requested URL was not found on this server.”
- “The page cannot be found”
- “We can’t find the page you’re looking for.”
- “The requested URL /~ was not found on this server. That’s all we know.
Сообщение об ошибке 404 Not Found также уникально тем, что многие сайты фактически создают пользовательскую страницу для устранения ошибки, а вместо этого показывает одно из приведенных выше сообщений. Некоторые темы WordPress также включают пользовательские страницы 404 по умолчанию. По этой причине вы можете вообще не увидеть сообщение об ошибке, потому что многие сайты будут использовать забавные или креативные 404 страницы .
Ошибка 404 Not Found влияние на SEO
Ошибка 404 Not Found не оказывает негативного влияния на SEO. Но она может оказать негативное влияние в зависимости от причины возникновения ошибки.
Например, если посетитель просто неправильно набирает URL-адрес и видит ошибку 404 — это не окажет негативного влияния на SEO. Но если у вас есть отдельные ошибки из-за неработающих URL-адресов, это ограничит возможности Google по правильному сканированию вашего сайта и окажет негативное влияние на SEO таким образом.
Кроме того, если проблема постоянных ссылок вызывает ошибки 404 , Google не сможет сканировать контент вашего сайта. Другими словами, всегда исправляйте свои ошибки 404 как можно скорее .
Ошибка 404 страница не найдена, влияние на производительность сайта
Многие не понимают этого, но сайты, которые генерируют много 404 ошибок, могут легко столкнуться с проблемами производительности, поскольку эти ответы обычно не кэшируются. Мы часто видели это на крупных сайтах, и это может быть большой проблемой, если вы случайно продвигаете или получаете вирусный трафик на страницу 404.
Вы также можете проверить 404 ошибки в Google Search Console или установить сторонний плагин, такой как Redirection, который регистрирует 404 ошибки. Однако помните, что подобные плагины также влияют на производительность.
Причина этих ошибок в том, что многие 404 страницы очень ресурсоемки. Для больших сайтов вам нужно избегать тяжелой страницы 404 . Создайте простой шаблон 404, который по возможности избегает запросов к базе данных.
Что такое 404 ошибка?
404 ошибка – это ответ HTTP, который свидетельствует нам о том, что сервер не нашел запрашиваемых данных на выбранном ресурсе. Возникнуть и появиться такая страница может в следующих случаях:
- 1. Адрес запрашиваемого материала или сайта был введен неправильно и человек перешел по ломаной ссылке;
- 2. Указанная страница вообще никогда не существовала;
- 3. Страницу, на которую перешел человек, переместили или удалили.
Стоит отметить, что эту ошибку нельзя путать с недоступностью сервера или какими-то другими сбоями. Без сомнения такая ошибка вызывает лишь негативные эмоции как у людей, которые только что зашли на такую страницу, так и у владельцев самого ресурса. Однако есть возможность использовать такую ошибку грамотно и мудро.
Для того чтобы ошибка 404 не была отпугивающей, а наоборот помогала привлекать пользователей, ее необходимо сделать простой и понятной. Некоторые вебмастера вообще делают перенаправление на главную страницу сайта, когда гости попадают на страницу с ошибкой. Данный метод тоже практичен и удобен, но может быть непонятен для самих посетителей, которые не понимают, почему их с требуемой страницы перебросили на главную. Именно поэтому лучше всего создать свою страницу с ошибкой 404, где оформить все так, чтобы пользователям было понятно.
Обзор
При обмене данными через HTTP сервер должен отвечать на запрос, такой как запрос веб-браузера для веб-страницы , с числовым кодом ответа и необязательным, обязательным или запрещенным (в зависимости от кода состояния) сообщением. В коде 404 первая цифра указывает на ошибку клиента, такую как неверно введенный унифицированный указатель ресурса (URL). Следующие две цифры указывают на конкретную обнаруженную ошибку. Использование трехзначных кодов в HTTP аналогично использованию таких кодов в более ранних протоколах, таких как FTP и NNTP . На уровне HTTP за кодом ответа 404 следует удобочитаемая «фраза причины». Спецификация HTTP предлагает фразу «Не найдено», и многие веб-серверы по умолчанию создают HTML-страницу, которая включает как код 404, так и фразу «Не найдено».
Ошибка 404 часто возвращается, когда страницы были перемещены или удалены. В первом случае лучше использовать сопоставление URL- адресов или перенаправление URL-адресов , возвращая ответ 301 Moved Permanently, который можно настроить в большинстве файлов конфигурации сервера, или путем перезаписи URL-адресов ; во втором случае нужно вернуть 410 Gone. Поскольку эти два параметра требуют особой конфигурации сервера, большинство веб-сайтов их не используют.
Ошибки 404 не следует путать с ошибками DNS , которые появляются, когда данный URL ссылается на несуществующее имя сервера. Ошибка 404 означает, что сам сервер был найден, но ему не удалось получить запрошенную страницу.
Причины возникновения
Несмотря на то, что существует ряд похожих по коду ошибок, каждая из них имеет своё значение. Если 404 заменить на 403, то здесь уже получится иная ситуация. Ссылка есть, но доступ для данного устройства к ней ограничен.
Что же касается причин, из-за которых можно столкнуться с 404 на сайте, то их несколько:
- Неправильно указан адрес. Такое возникает часто и по понятной причине. Юзер вводит адрес вручную, либо неправильно его скопировал, в результате чего вылез соответствующий код. Либо же изначально ссылка была неправильной, и она ведёт на страницу, которой в действительности не существует.
- Битые ссылки. Сюда относятся те ссылки, которые не перенаправляют ни на одну из страниц на сайте. Довольно часто эта проблема наблюдается в случае с внутренней перелинковкой. Отличие от неправильного адреса в том, что ссылка раньше существовала, но теперь её нет.
- Страница удалена. Если на сайте удалили ту или иную страницу, вовсе не факт, что на неё никто не переходит. Дело всё в том, что такие ссылки могут сохраняться в поисковых системах достаточно долгое время. Либо же у пользователя сохранились в закладках старые ссылки, которые уже удалены.
- Нарушения в работе сервера. Иногда код 404 может появляться по причине того, что сам сервер неисправен. Но это, скорее, исключение, нежели правило.
В итоге получается, что с кодом ошибки 404 пользователи сталкиваются тогда, когда не удаётся найти запрашиваемую на сайте страницу. Причины похожи, но всё равно имеют определённые отличия между собой.
Summary
Unfortunately, 404 errors will happen on your site whether you like it or not. The larger your WordPress site is, the more you’ll start seeing. We recommend getting a good workflow together for how you monitor these types of errors and go about fixing them. 404 errors are never good for visitors, your brand, and Google doesn’t like to see them either.
Have any other tips or questions regarding the Error 404 Not Found message or how it impacts your WordPress site? Let us know below in the comments.
If you enjoyed this article, then you’ll love Kinsta’s WordPress hosting platform. Turbocharge your website and get 24/7 support from our veteran WordPress team. Our Google Cloud powered infrastructure focuses on auto-scaling, performance, and security. Let us show you the Kinsta difference! Check out our plans
Как исправить и что делать?
Да почти никак, если этот статус был отдан не случайно, то и найти проблему будет почти невозможно. Ниже лишь советы по возможным действиям, чтобы исправить ошибку:
- Перезагрузите страницу. Нажимаем кружок в браузере «Обновить» или просто клавишу F Иногда это помогает.
- Проверьте ссылку на возможные ошибки – лишние символы в конце или их отсутствие, наличие пробелов и т.д.
- Если вы знаете название статьи – попробуйте воспользоваться поиском внутри сайта, может вывести на существующую копию.
- Если совсем все плохо – идите в Яндекс или Гугл и вбейте заново. Иногда находит нужное или даже копию.
Решения для профессионалов и вебмастеров описывать не буду. Если таковые имеются, пишите по почте, по свободному времени помогу разобраться с возможной бедой и у вас. А так просмотрите видео, может будет полезным:
Как исправить «404 Not Found Nginx»?
1. Регулярные выражения
Как я уже сказал выше, самой частой проблемой, которая вызывает 404, являются регулярные выражения. Смотрим, что происходит в лог файле:
Видим, что серверу пришёл запрос /vstats. Дальше он проверяет location: /, /robots.txt, /vatsts/, /site-control/. Здесь уже можем понять, в чём проблема — промазали на один слеш. Дальше проверяются все регулярные выражения, и, так как в них ничего найдено не было, выбирается location /.
Далее директива try_files пытается найти файл /vstats, не находит и ищет index.php, который, в свою очередь, возвращает 404.
Если мы наберём, то что ожидает видеть Nginx — /vstats/, то откроется наша страница статистики.
Если мы добавим к конфигурационному файлу ещё один location с регулярным выражением, например:
То абсолютно все запросы будут обрабатываться именно этим регулярным выражением и, естественно, что ничего работать не будет. Видим, что приходит запрос /vstats/:
Он совпадает с префиксным location, но потом Nginx видит наше регулярное выражение и передаёт управление ему.
Поэтому будьте очень осторожны с регулярными выражениями, если они вам нужны, то размещайте их только внутри префиксных location, чтобы ограничить их область действия этим location, иначе может возникнуть ошибка 404 nginx.
2. Недостаточно памяти
Если php-скрипту не хватило оперативной памяти для выполнения, и его процесс был убит операционной системой, то Nginx тоже может вернуть ошибку 404. Такое поведение вы будете наблюдать, когда скрипт очень долго выполняется, а потом появляется «404 Not Found» или страница ошибки вашего движка. Обычно эта неисправность тоже видна в отладочном логе.
Решить такую проблему можно, освободив память на сервере, часто такое может возникать из-за утечек памяти в php, когда процессы php-fpm занимают почти всю память на сервере. Поэтому перезапуск php-fpm решает проблему:
Чтобы избежать этой проблемы в будущем, можно настроить автоматический перезапуск процессов после обработки определённого количества запросов. Например каждые 200 запросов:
3. Не найден index
Если вы запрашиваете URL вида /vstats/, но в настройках Nginx не указан файл index, который нужно использовать для этой ссылки, то у вас ничего не выйдет, и вы получите 404. Вы можете добавить директиву index в ваш location:
Или сразу в server, в Nginx все location наследуют директивы, установленные в server.
4. Другие проблемы
Подобных проблем, вызывающих 404 в Nginx, может быть очень много, но все они решаемы, и всё, что нужно для их решения, есть в отладочном логе Nginx. Просто анализируйте лог и на основе этого вносите исправления.
Что означает ошибка 404?
Действительно, любое военное действие должно начинаться с разведки. А в нашем случае – с понимание того, что означает ошибка 404.
Существует три основных причины, которые могут привести к подобным последствиям:
- Запрашиваемая страница была удалена владельцем ресурса. Например, Роснадзор настоятельно посоветовал это сделать вебмастеру.
- Владелец ресурса решил разместить информацию по новому адресу. Ну не понравился ему старый URL по каким-то причинам.
- Пользователя отвлекла пролетающая мимо муха, которая пыталась приземлиться на бутерброд с колбасой, поэтому он банально ошибся с вводимыми символами. В итоге, поисковики забросили его в страну несуществующих страниц.
Естественно, на вопрос – ошибка 404 страница не найдена как исправить – в последнем случае ответ достаточно простой:
- Замочить мерзкую тварь подручными средствами.
- Взять себя в руки.
- Сделать глоток вкуснейшего чая.
- Правильно ввести в поисковую строку адрес запрашиваемой страницы.
С остальными вариантами все немного сложнее.
Мягкие ошибки 404
Некоторые веб-сайты сообщают об ошибке «не найдено», возвращая стандартную веб-страницу с кодом ответа «200 OK», ложно сообщая, что страница загружена правильно; это известно как мягкий 404 . Термин «мягкий 404» был введен в 2004 г. Зивом Бар-Йосефом и др .
Программные сообщения 404 проблематичны для автоматизированных методов определения того, не работает ли ссылка. Некоторые поисковые системы, такие как Yahoo и , используют автоматизированные процессы для обнаружения программных ошибок 404. Программные ошибки 404 могут возникать в результате ошибок конфигурации при использовании определенного программного обеспечения HTTP-сервера, например, с программным обеспечением Apache , когда документ об ошибке 404 (указанный в файле .htaccess ) указан как абсолютный путь (например, http: // example .com / error.html), а не относительный путь (/error.html). Это также можно сделать специально, чтобы заставить некоторые браузеры (например, Internet Explorer ) отображать настроенное сообщение об ошибке 404, а не заменять то, что обслуживается, «дружественным» сообщением об ошибке для конкретного браузера (в Internet Explorer это поведение запускается, когда 404, а полученный HTML-код короче определенной длины и может быть отключен пользователем вручную).
Существуют также «мягкие 3XX» ошибки, когда контент возвращается со статусом 200, но он поступает с перенаправленной страницы, например, когда отсутствующие страницы перенаправляются на корневую / домашнюю страницу домена.
Прокси-серверы
Некоторые прокси-серверы генерируют ошибку 404, когда более правильным будет ошибки из . Если прокси-сервер не может удовлетворить запрос страницы из-за проблемы с удаленным хостом (например, сбои при разрешении имени хоста или отказ в TCP-соединениях), это следует описать как внутреннюю ошибку сервера 5xx, но вместо этого может выдать ошибку 404 . Это может сбить с толку программы, которые ожидают и действуют в соответствии с конкретными ответами, поскольку они больше не могут легко отличить отсутствующий веб-сервер от отсутствующей веб-страницы на существующем веб-сервере.
Преднамеренные 404-е
В июле 2004 года британский оператор связи BT Group развернул систему блокировки контента Cleanfeed , которая возвращает ошибку 404 на любой запрос контента, который был определен Internet Watch Foundation как потенциально незаконный . Другие интернет-провайдеры при тех же обстоятельствах возвращают ошибку HTTP 403 «запрещено». О практике использования фальшивых ошибок 404 как средства сокрытия цензуры также сообщалось в Таиланде и Тунисе . В Тунисе, где цензура была жесткой до революции 2011 года , люди осознали природу фальшивых ошибок 404 и создали воображаемого персонажа по имени « », который представляет «невидимого цензора».
Редактируем страницу 404
Редактировать файл можно из системы управления сайтом напрямую, для этого нужно добавить желаемую разметку и изображения.
При ее создании руководствуйтесь тем, что информация должна открываться быстро и без задержек. Страница должна быть «легкой» (занимать мало места), полезной и предлагать альтернативы поиска несуществующего документа.
Обычно содержание включает в себя следующую информацию:
- переход на главную;
- список рейтинговых страниц сайта;
- переход на карту ресурса;
- кнопку сообщения администрации о «битой» ссылке на определенном источнике.
В остальном лучшим помощником будет фантазия, корпоративные стандарты и оригинальная идея дизайнера.
Как включить режим отладки Nginx?
Сначала нам необходимо установить версию Nginx с поддержкой отладки. Чтобы проверить, поддерживает ли ваша текущая версия этот режим, наберите:
В выводе должна быть строчка «—with-debug». Если её нет, значит отладка не поддерживается, и надо установить версию с поддержкой. В CentOS такой пакет называется nginx-debug. Для его установки наберите:
Теперь появился ещё один исполняемый файл, и он собран уже с поддержкой отладки:
Откройте конфигурационный файл вашего сайта или глобальный конфигурационный файл, если вы не задавали настройки логов отдельно для каждого сайта, и в конце стоки error_log замените error на debug:
Останавливаем обычную версию и запускаем версию с отладкой:
Как изменить страницу с ошибкой 404 на WordPress?
В административной панели любого сайта на WordPress есть доступ к файлу под названием – 404.php или Шаблон ошибки 404. В теле этого файла Вы можете изменить второстепенные понятия, которые отвечают за вывод страницы
Важно следить за тем, чтобы Вы случайно не удалили важные префиксы оформления страницы
Вы можете изменить или же указать на этой странице следующие понятия:
Помимо этого Вы можете использовать плагины, которые несколько облегчат работу с 404 ошибкой. К примеру, это может быть плагин для WordPress Redirection, который вы можете скачать с официального блога WordPress. Этот плагин позволяет использовать перенаправление на другие страницы сайта. Вам необходимо его скачать, установить обычным способом к себе на сайт и активировать в меню плагинов. А далее, как изображено на иллюстрации, пропишите исходную страницу и адрес страницы, куда будет совершаться перенаправление.
Следующий плагин — Smart 404, который можно найти прямо из панели управления сайтом. После того, как Вы его найдете, установите и активируйте данный плагин. После этого зайдите в «Параметры» и выберите настройки этого плагина. На открывшейся странице поставьте 4 галочки и сохраните изменения.
Что, если Вы владелец сайта на котором ошибка 404?
Подготовьте страницу 404 для своих пользователей на случай ошибки
Если вы сами владелец сайта и при переходе возникает ошибка 404, проверьте, чтобы на FTP (протокол передачи файлов) в корне вашего ресурса был файл .htaccess. Часто он меняется и может иметь формат блокнота .txt, в этом случае его имя нужно изменить именно на .htaccess
Проверьте материал, который опубликован на сайте
Иногда, по неосторожности, можно поставить статус статье «На утверждении» или «Черновик». В этом случае перейдите в панель управления сайтов и найдите эти статьи
Исправить ошибку 404 просто, если восстановить статус «Опубликовано».
Дубли страниц. Проверьте адрес вашей страницы. После перенастройки файлов, вполне может случиться, что дубли страниц будут удалены. Например, у вас сайт имеет следующий адрес: https://error4xx.com/category/post-name/. Вы решили убрать костыль «category». Теперь у вас https://error4xx.com/post-name/, а значит первой ссылке больше не существует.
Для удобства и лояльности пользователей, заранее настройте страницу ошибки 404, чтобы предложить пользователю варианты перехода по Вашему сайту. Иначе есть риск потери посетителей вовсе.
Надеемся, что вся информация, указанная выше, была вам полезна и доступна для восприятия. И конечно же, желаем поменьше этих злых ошибок 404.