Умное перенаправление по ошибке 404

 alexei 18/02/2020 - 10:38
Умное перенаправление по ошибке 404

Плохо реализованная страница ошибки 404 ("Страница не найдена") может стать причиной массовой потери посетителей и клиентов сайта. И с этим следует всячески бороться. Ведь даже страница с ошибкой 404 является потенциальной воронкой конверсии, если, конечно, все сделать правильно. При этом, если сайт построен криво, то такая страница может даже стать вашей самой посещаемой целевой страницей.

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

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

Код

Создайте файл 404.html со следующим содержимым и поместите его в корневую директорию вашего сайта:


<!doctype html>
<html lang="en">
<head>
   <meta charset="utf-8">
   <meta http-equiv="x-ua-compatible" content="ie=edge">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>Redirecting</title>
</head>
<body onload="redirect()">
   <h1 style="text-align: center; padding-top: 50px; display: block;">Redirecting...</h1>
   <script>
      function redirect() {
         setTimeout(function(){ 
            window.location.replace("/");
	}, 100);	
         }
   </script>
</body>
</html>

Данный код будет перенаправлять на домашнюю страницу сайта, но заменив значение функции window.location.replace вы можете сделать перенаправление на любую страницу как своего, так и внешнего сайта.

И наконец задайте новый документ ошибки добавив или исправив следующую строку в файле .htaccess:


ErrorDocument 404 /404.html