Как вызвать ошибку 404
Перейти к содержимому

Как вызвать ошибку 404

  • автор:

Как искусственно вызвать ошибку 404 посредством .htaccess?

Добрый день. Сразу к проблеме.. 1. Нужно вызвать 404 Not Found к любому несуществующему php файлу (сайт.ру/folder/example.php или сайт.ру/example.php) с помощью .htaccess. Редиректы и т.п. не пойдут. 2. А ещё бы хотелось принудительно вызвать ошибку 404 к существующим php файлам, но так, что бы они корректно работали.

ErrorDocument 404 /404.php

header("HTTP/1.1 404 Not Found"); 
header("Status: 404 Not Found");

также не пойдет, т.к. эти строки не работают. P.S. уже 2 часа гуглю, не могу найти. Устал. Кто может поможет?

  • RewriteRule в .htaccess на php файл
  • Как передать аккаунт Adsense другому человеку
  • Есть смысл чтобы сайт (ИМ) работал на PHP 8.1 сейчас PHP 7.1?

На сайте с 02.04.2009
23 июня 2013, 11:42

parlament-omsk:
1. Нужно вызвать 404 Not Found к любому несуществующему php файлу (сайт.ру/folder/example.php или сайт.ру/example.php) с помощью .htaccess.

parlament-omsk:
2. А ещё бы хотелось принудительно вызвать ошибку 404 к существующим php файлам, но так, что бы они корректно работали.

header(» 404 Not Found»); отлично работает.

Как в WordPress вызвать 404-ю ошибку, если в url’е отстутсвует параметр?

Immortal_pony

Еще понадобилась проверка не только на пустой параметр, но и если id задан, но автора с таким id нет. Как такое дополнить?

Immortal_pony

Immortal_pony @Immortal_pony Куратор тега PHP

add_action("template_redirect", function() < if ($_SERVER['REQUEST_URI'] === "/book/author/") < $authorId = array_key_exists("id", $_GET) ? (int)$_GET['id'] : null; $author = !is_null($authorId) ? get_user_by("id", $authorId) : null; if (empty($author)) < global $wp_query; $wp_query->set_404(); status_header(404); get_template_part(404); die(); > > >);

lasthero67 @lasthero67 Автор вопроса

Immortal_pony, если адрес страницы /book/author/?id=41, то условие if ($_SERVER[‘REQUEST_URI’] === «/book/author/») не выполняется.

Immortal_pony

Immortal_pony @Immortal_pony Куратор тега PHP
lasthero67, действительно. Вот так можете сделать

$currentUrl = trailingslashit(strtok($_SERVER['REQUEST_URI'], "?")); if ($currentUrl === "/book/author/") 

Как сделать страницу ошибки 404?

Страница 404 — это автоматическая страница, которая открывается, если запрашиваемый сайт невозможно найти. Обычно такая ошибка возникает, когда человек вводит некорректный адрес сайта или переходит по несуществующей ссылке (например, вы удалили старую ссылку, а в поисковой индексации она осталась, и человек перешел).

Чтобы создать страницу 404 ошибки, добавьте новую страницу в вашем сайте, оформите её, потом перейдите в «Настройки сайта» → «Еще» → «Страница 404» и выберите нужную страницу из списка, сохраните, а затем переопубликуйте все страницы.

Примите во внимание: назначенная страница будет автоматически запрещена для индексирования.

Похожие вопросы
  • Поисковики не видят мой сайт, что делать?
  • Как добавить robots.txt и sitemap.xml
  • Как добавить (назначить) тег H1?
  • Как добавить ключевые слова для сайта?
  • Как запретить индексировать страницу поисковикам?

Поиск 404 ошибок на сайте

Довольно широко распространена ситуация, когда мы, пользователи, натыкаемся на несуществующие страницы с кодом ответа 404 Not Found. Такие страницы есть на любом сайте, достаточно лишь вбить в адресную строку URL с ошибкой. Но вот проблема — наличие внутренних ссылок на них обязательно к исправлению, и вот почему.

  • Поисковые роботы расходуют краулинговый бюджет при переходе на 404. Это приводит к тому, что они с меньшей вероятностью просканируют действительно полезные страницы с новым контентом.
  • Потеря веса внешних ссылок, которая несомненно скажется на ухудшении в ранжировании этой страницы, а возможно и всего сайта.
  • Ухудшение пользовательского опыта. Если на каждом углу посетитель сайта наталкивается на 404 страницу с грустной надписью «Not Found» он с большой вероятностью покинет сайт.

Какие причины приводят к 404

Вызывать эту ошибку могут следующие причины:

  • Неправильный URL-адрес. Довольно часто пользователи просто опечатываются.
  • Страница была удалена.
  • URL-адрес страницы был изменен без настройки редиректов. Это привело к тому, что если пытаться перейти по старому адресу (например, по ссылке с другого сайта или закладок) возникнет ошибка 404.

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

Что делать

Сами по себе 404 ошибки являются нормальной практикой, но те ссылки, которые на них ведут — довольно неприятное явление. Постарайтесь как можно быстрее от них избавиться, изменив на корректные либо вовсе удалив. Так вы значительно меньше будете растрачивать краулинговый бюджет поисковых роботов, а чтобы сократить вероятность ухода с сайта живых людей, при попадании на такую страницу, правильно оформляйте страницу 404. Это тема нашей следующей статьи.

Как узнать сколько пользователей зашли на 404 страницу

Наиболее эффективный способ — создать цель в Яндекс.Метрике и отслеживать её.

После создания цели в Метрике установите на 404 страницу следующий код:

window.onl oad = function ()

XXXXXXX — номер вашего счетчика.

После этого вы сможете отслеживать трафик на 404 странице. Подобным образом можно сделать и в Google Analytics.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *