htaccess. Особенности и секреты правильной настройки файла.htaccess Настроить страницу 404

Страница 404 призвана сообщать пользователю, что заданный им url (адрес страницы) не существует.
Такие неправильные урлы еще можно назвать "битыми ссылками".
Многие сайты делают свои страницы 404 для удобства своих пользователей. Часто это красивые и интересные страницы, которые вызывают у пользователя улыбку вместо разочарования от того, что адрес страницы неправильный.
При создании страницы 404 есть важная техническая составляющая, которая сильно влияет на ранжирование сайтов в поисковых системах, если все не настроено правильно.

Если вы озадачились созданием страницы 404, то вам нужно учитывать три момента:
1) Переадресация со всех неправильно введенных url на страницу 404 в.htaccess.
2) Правильный ответ сервера после переадресации (http-код страницы должен быть 404, а не 200).
3) Закрытие страницы 404 от индексации в robots.txt

Сразу отмечу, что все вышеизложенное написано для самописных сайтов, преимущественно на php. Для wordpress существуют плагины по настройке того же самого. Но в этой статье мы рассмотрим, как все выглядит в реальности. %)

Переадресация (редирект) неправильных url на страницу 404

Первое, что вы делаете – создаете саму страницу 404, чтобы было куда людей посылать %).
Перенаправление url настраивается в файле.htaccess
Просто вписываете строчку:
ErrorDocument 404 http://mysite.com/404.php
Где «mysite.com» – ваш домен, а http://mysite.com/404.php - путь к реальной странице. Если ваш сайт на html, то строка будет выглядеть как:
ErrorDocument 404 http://mysite.com/404.html
Проверка очень проста. После заливки на хостинг файла.htaccess с вышеуказанной строкой, делаете проверку, вводя заведомо не существующий урл (битая ссылка), например: http://mysite.com/$%$%
Если переадресация на созданную вами страницу произошла, значит все работает.
Итак, полностью файл.htaccess, где настроена ТОЛЬКО переадресация на 404 будет выглядеть так:
____________________________
RewriteEngine on
ErrorDocument 404 http://mysite.com/404.html
____________________________

Правильный ответ сервера (http-код страницы)

Очень важно, чтобы при перенаправлении был правильный ответ сервера, а именно – 404 Not Found.
Тут следует объяснить отдельно.

Любому url при запросе назначается статус (http-код страницы).
Для всех существующих страниц, это: HTTP/1.1 200 OK
Для страниц перенаправленных: HTTP/1.1 302 Found
Если страницы не существует, это должен быть HTTP/1.1 404 Not Found

То есть, какой бы урл не был введен, ему присваивается статус, определенный код ответа сервера.
Проверить ответ сервера можно на такой ресурсе как bertal.ru или SEARCH CONCOLE GOOGLE – Сканирование/Посмотреть как GOOGLE бот.
Когда у вас не было перенаправления через.htaccess на страницу 404, то на любой несуществующий урл, введенный пользователем, а также на битые ссылки был ответ «HTTP/1.1 404 Not Found»

После того, как вы настроили перенаправление на свою авторскую страницу 404 через.htaccess, как описано выше, то вводя битую ссылку (неверный url, который заведомо не существует), типа http://mysite.com/$%$% , ответ сервера будет:
- сначала HTTP/1.1 302 Found (перенаправление),
- а затем HTTP/1.1 200 OK (страница существует).

Проверьте через bertal.ru .
Чем это грозит? Это будет означать, что гугл в свою базу данных (индекс) может внести все битые ссылки, как существующие страницы с содержанием страницы 404. По сути - дубли страниц. А это невероятно вредно для поисковой оптимизации.

В этом случае нужно сделать две вещи:
1) Настроить правильный ответ сервера на странице 404.
2) Закрыть от индексирования страницу 404. Это делается через файл robots.txt

Настраиваем ответ сервера HTTP/1.1 404 Not Found для несуществующих страниц

Ответ сервера настраивается благодаря функции php в самом начале страницы:

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

Закрыть страницу 404 от индексирования

Закрыть страницу от индексирования можно в файле rodots.txt. Будьте внимательны с этим инструментом, ведь через этот файл ваш сайт, по сути, общается с поисковыми роботами!
Полный текст файла rodots.txt, где ТОЛЬКО закрыта индексация 404 страницы, выглядит так:
____________________________
User-agent: *
Disallow:
Disallow: /404.php
____________________________

Замечания по коду: "/404.php" означает путь к странице. Если на вашем сайте страница 404.php (или 404.html соответственно) находится в какой-то папке, то путь будет выглядеть:
/holder/404.php
где "holder" - название папки.

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

От автора: приветствую вас, друзья. Итак, мы продолжаем цикл статей, посвященных знакомству с одной из популярнейших CMS для создания интернет-магазинов – OpenCart (Оперкарт). В этой статье мы поговорим о том, как создать и настроить 404 страницу в OpenCart.

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

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

Страница 404 в OpenCart уже имеется и выглядит по умолчанию она так:

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

Например, заголовок страницы меня устраивает, а вот текст я бы хотел изменить. Сделать это можно в языковом файле, который вы найдете по адресу \catalog\language\ru-ru\error\not_found.php

Первая переменная — $_["heading_title"] – хранит текст заголовка, а вторая — $_["text_error"] – текст под заголовком. Давайте изменим его:

// Text $_["text_error"] = "404... Упс, такой страницы на сайте нет...";

// Text

$ _ [ "text_error" ] = "404... Упс, такой страницы на сайте нет..." ;

Изменения произошли и на самой странице 404 Опенкарт.

Ок, а что если мы захотим поменять текст на кнопке, добавить какую-нибудь картинку или сделать что-то еще подобное? Это уже лучше делать в файле шаблон. Для этого идем в файл шаблона страницы 404 активной темы, по умолчанию это будет файл \catalog\view\theme\default\template\error\not_found.tpl

Контент страницы находится в блоке с id=»content». Давайте изменим текст кнопки и вместо Продолжить напишем Перейти на главную. Для этого данный код:

" class="btn btn-primary">

< div class = "pull-right" > < a href = " " class = "btn btn-primary" > < / a > < / div >

Заменим таким:

" class="btn btn-primary">Перейти на главную

Аналогичным образом вы можете добавлять на страницу любой другой контент. И несколько слов о настройке страницы. Например, как мне добавить меню категорий в левый сайдбар? Это можно сделать в админке сайта. Перейдем в меню Дизайн – Схемы. Здесь вы найдете список макетов, которые используются для той или иной страницы сайта. Для страницы 404 макет по умолчанию.

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

В качестве пути я указал маршрут, соответствующий адресу 404, — error/not_found. В левую колонку добавил вывод категорий. Сохраним новый макет и посмотрим результат на сайте.

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

Первое, что необходимо сделать - это создать файл.htaccess . Обратите внимание, что имени у этого файла нет, а расширение "htaccess ". Если Вы работаете в Unix , то проблем с созданием не возникнет. А вот если Вы работаете в Windows , то создать файл .htaccess можно таким образом (так делаю я, хотя, возможно, есть более простые способы):

  1. Открыть блокнот.
  2. Выбрать пункт меню "Сохранить как ".
  3. Введите имя файла ".htaccess ".
  4. Выберите тип файла "Все файлы ".
  5. Сохраните.

В результате, у Вас появится файл .htaccess . Скопируйте его в корень своего сайта. Теперь Вы можете его открыть (например, в том же блокноте) и написать там такую строку:

ErrorDocument 404 /404.html

Теперь создайте в корне сайта страницу "404.html", в которой пишите любой HTML-код , например, такой:





Страница не существует!


Проверьте правильность ввода адреса


С Уважением, Мой сайт



Таким образом, люди будут видеть не стандартную страницу в браузере, а ту страницу, которую создали Вы.

Напоследок, хочется сказать одну важную вещь. Если Вы работаете на локальном компьютере, то на нём должен быть установлен сервер (например, пакет Denwer , в который входит и сервер Apache , и PHP , и MySQL и много чего ещё).

Loading...Loading...