Редирект 404 редирект htaccess: Страница не найдена | REG.RU

Файл .htaccess. Замена сообщений об ошибках, редирект, склейка зеркал

главная / web / статьи / файл .htaccess / часть 2

С помощью файла дополнительной конфигурации веб-сервера apache можно легко заменить стандартные сообщения об ошибках на свои собственные. Например, настроить обработку ошибки 404. Ошибка 404 говорит о том, что сервер не может найти данные, согласно запросу. Например, какая-то страница Вашего сайта была удалена или перенесена, а ссылка на нее по-прежнему стоит где-то в дебрях интернета. Если пользователь перейдет по этой ссылке, то получит ответ сервера с ошибкой 404. После чего, скорее всего, сразу закроет в кладку, даже не пытаясь найти переехавшую страницу.

Однако, если вместо стандартного сообщения об ошибке будет загружаться какая-то html страница с ссылками на главную или на карту сайта, то пользователь с большей вероятностью останется на сайте.

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

ErrorDocument 404 http://www.

ваш_сайт.ru/

В коде необходимо заменить http://www.ваш_сайт.ru/ на адрес Вашего сайта.

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

ErrorDocument 404 http://www.ваш_сайт.ru/404.html

В данном случае это файл 404.html, находящийся в корневом каталоге сайта http://www.ваш_сайт.ru/

Оформить эту страницу Вы можете на свой вкус, но, желательно, чтобы она содержала ссылки на главную и на карту сайта.

Так же достаточно распространенными ошибками являются ошибка 401 (Требуется авторизация), 403 (пользователь не прошел аутентификацию, доступ запрещен), 500 (Внутренняя ошибка сервера, например, в синтаксисе или кодировке файла .htaccess). Их обработка происходит по тому же принципу:

ErrorDocument 401 http://www. ваш_сайт.ru/401.html
ErrorDocument 403 http://www.ваш_сайт.ru/403.html
ErrorDocument 500 http://www.ваш_сайт.ru/500.html

Редирект (от английского redirect — переадресовать) — перенаправление пользователя с одного адреса на другой. С помощью файла .htaccess возможно осуществить несколько видов редиректа:

permanent (301 — документ перемещен постоянно)

temp (302 — документ перемещен временно)

seeother (303 — смотри другой)

gone (410 — убран)

Наиболее часто используемым является редирект 301, который говорит о том, что сайт переехал навсегда. Изначально эта директива использовалась в том случае, когда сайт перемещался на новый домен, чтобы не терять pr сайта и его позиции в выдаче поисковых систем. Код такого редиректа выглядит следующим образом:

RedirectPermanent / http://новый _сайт.ru/

Файл .htaccess, содержащий эту строчку размещается на старом домене, и все пользователи, а так же поисковые роботы, со старого сайта перенаправляются на новый.

Таким образом новый сайт не теряет пользователей и pr старого сайта.

Так же возможно сделать 301 редирект с конкретных страниц сайта на другие страницы. Например, если наш сайт поменял свою структуру. Нужно это, опять же, для того, чтобы не терять трафик, ведь в выдаче поисковых систем, после изменения структуры сайта, какое-то время будут ссылки на старые страницы. Так же некоторые страницы могли попасть в закладки пользователей, на эти страницы могли остаться ссылки на сайтах, так что, чтобы не отправлять пользователя лишний раз на страницу с 404 ошибкой, лучше настроить 301 редирект при изменении структуры сайта. Итак, сделать 301 редирект с одной внутренней страницы сайта на другую можно следующим образом:

Redirect 301 /старая_страница.html http://www.ваш_сайт.ru/новая_страница.html

В данном случае работает редирект 301 со страницы http://www.ваш_сайт.ru/старая_страница.html на страницу http://www.ваш_сайт.ru/новая_страница.html

Редирект 301 так же используют для переадресации страниц с префиксом www на страницы без www или наоборот. ваш_сайт.ru
RewriteRule (.*) http://www.ваш_сайт.ru/$1 [R=301,L]

В первом случае мы настроили переадресацию со всех страниц сайта с префиксом www на аналогичные страницы сайта без www. Во втором случае — наоборот.



← предыдущая статья следующая статья →

как сделать htaccess на главную правильно

Пользователи сайта видят 404-ю ошибку, когда переходят по несуществующим URL (битым ссылкам). В таких случаях люди чаще всего закрывают вкладку браузера, а у ресурса ухудшаются поведенческие факторы. Чтобы битые ссылки не портили SEO-показатели вашего сайта, необходимо правильно настроить 404 редирект и креативно оформить страницу ошибки. Расскажем, как это сделать.

Почему возникает 404-я ошибка и как она влияет на SEO-показатели

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

Если удаленная страница или ее сохраненная копия все еще отображается в поиске, сообщите об этом Яндексу через форму или в разделе «Инструменты» Яндекс.Вебмастера. Модераторы рассмотрят обращение в течение нескольких дней и удалят несуществующий URL из индекса.

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

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

Как видите, 404-е ошибки влияют не только на SEO-показатели, но и на лояльность потенциальных клиентов к бренду. Поэтому чем быстрее вы настроите редирект, тем больше у вас будет шансов не терять лидов, а перенаправлять их в другие разделы сайта.

Как сделать 404 редирект и правильно его настроить

Для начала вам нужно создать 404-ю страницу, если ее еще нет. Это можно сделать следующим образом:

  1. Если вы знаете HTML и CSS: напишите код самостоятельно, назовите файл 404.html и загрузите его в корневую папку сайта.
  2. Если вы далеки от веб-разработки: поищите в интернете бесплатные шаблоны, скачайте файл и добавьте его в корневой каталог.
  3. Если ваш ресурс сделан на WordPress: найдите в каталоге плагин 404page — your smart custom 404 error page и настройте с его помощью страницу ошибки. В этом случае вам не придется прописывать путь к файлу в .htaccess.
  4. Если у вас сайт на Tilda: создайте и оформите новую страницу, опубликуйте ее, укажите в настройках сайта правильный URL и сохраните изменения.

Чтобы настроить редирект, откройте в корневой папке сайта файл .htaccess и добавьте в него вот такую строку: 

ErrorDocument 404 https://site.ru/404.html

где вместо site.ru будет указан домен вашего сайта. 

Не забудьте сохранить изменения.

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

После настройки редиректа нужно закрыть служебную страницу от индексации. Для этого необходимо в файле robots.txt прописать следующую команду: 

Disallow: /404.html

Сохраните изменения и проверьте, как работает переадресация. Покажем, как это сделать в Яндекс.Вебмастере.

Перейдите в раздел «Инструменты – Проверка ответа сервера»:

Укажите адрес страницы ошибки и нажмите на кнопку «Проверить». Редирект настроен правильно, если робот Яндекса отвечает кодом 404 Not Found, а не 200 ОК.

Как красиво оформить 404-ю страницу 

Вы удивитесь, но 404-я страница может конвертировать посетителей сайта в клиентов. Нужно лишь разработать цепляющий дизайн и продумать URL’ы для перенаправления.

Многие компании делают на 404-й странице кнопку с переадресацией на главную:

Пример переадресации на сайте Wildberries

Другие бренды дают пользователям свободу выбора и показывают ссылками, в какие разделы сайта они могут перейти:

Тинькофф пытается перенаправить пользователей в разделы сайта с основными продуктами, а также дает ссылку на главную

Некоторые компании ведут посетителей сайта на внешние площадки:

«Вкусно — и точка» (бывший McDonald’s) рекомендует пользователям скачать мобильное приложение в Google Play или App Store и следить за новостями.

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

Выводы

Когда пользователь переходит по несуществующему URL, он видит 404-й ошибку.

Скорее всего, человек просто закроет вкладку браузера, но вы можете попытаться его удержать. Для этого нужно создать новую страницу, правильно настроить редирект и проверить корректность его работы в сервисах для вебмастеров.

С помощью такого редиректа вы можете вести пользователей на стартовую, в разделы каталога или на внешние площадки. В результате люди будут совершать целевые действия, и вы не упустите потенциальных клиентов.

php — htaccess не перенаправляет на пользовательскую страницу 404

Задавать вопрос

спросил

Изменено 1 год, 8 месяцев назад

Просмотрено 17 тысяч раз

У меня есть пользовательская страница 404 с именем 404page. php, и у меня есть файл htaccess со строкой, которая, как я обнаружил, должна работать (это единственная строка, которая у меня есть в файле .htaccess)

ErrorDocument 404 /404page.php

Вчера все работало нормально, но сегодня я оптимизировал изображения и некоторые другие вещи на веб-сайте, и когда я повторно загрузил его, htaccess больше не перенаправлял на 404page.php, но на страницу, на которой написано:

Не найдено

Запрошенный URL-адрес /asfsdtg не найден на этом сервере.

Кроме того, при попытке использовать ErrorDocument для обработки запроса возникла ошибка 404 Not Found.

(я только что набрал asfsdtg, чтобы проверить, работает ли он).

Сайт загружен в сеть и я управляю им через cpanel (я еще новичок). Искал какие-то решения, пробовал добавить еще строчку в .htaccess, тогда получилось вот так:

 RewriteEngine on
ОшибкаДокумент 404 /404page.php
 

Я даже пытался указать местоположение 404page. php как локальную ссылку и интернет-ссылку, и это все равно выдавало странную страницу с ошибкой.

Кто-нибудь знает, что происходит? Если вам нужна дополнительная информация, которую я не предоставил, скажите, что еще я могу предоставить

  • php
  • .htaccess

5

Попробуйте это:

 RewriteEngine on
ErrorDocument 404 http://yoursitename.com/404page.php
 

И убедитесь, что 404page.php существует в корне вашего сервера и действительно называется 404page.php , а не 404Page.php

Будьте осторожны с символами, это зависит от клавиш!

3

Попробуйте вот так:

 RewriteEngine on
Документ об ошибке 404 http://www.sitename.com/404.php
 

1

 ErrorDocument 404 /404page.php
 

Если указанная выше настройка не работает, необходимо добавить дополнительную строку кода, как указано ниже. — [R=404,L]

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя адрес электронной почты и пароль

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

.

htaccess — Как сбросить ошибку 404 из htaccess?

спросил

Изменено 1 год, 9несколько месяцев назад

Просмотрено 18 тысяч раз

Все, что я нахожу, похоже, связано с созданием пользовательской страницы 404.

Это , а не , что я пытаюсь сделать.

Если я хочу заблокировать доступ к странице, я могу сделать это в htaccess:

RewriteRule шаблон — [F]

Однако « Forbidden » намекает, что страница делает существует. Я хочу, чтобы страница казалась даже не существующей. Поэтому я хотел бы выдать ошибку 404 вместо 403. Затем он должен отображать любую страницу 404, если бы ресурса действительно не было.

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

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