Как определить возвращает ли сервер ошибку 404. Особенности и секреты правильной настройки файла.htaccess. Как правильно настроить.htaccess и зачем это нужно

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

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

Какие функции выполняет страница 404 WordPress

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

Пример:

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

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

Как сделать страницу 404 WordPress

Как сделать страницу 404 WordPress по всем правилам?

На странице ошибки, которую пользователи покидают реже, чем дефолтную:

— Не должно быть редиректа. Даже если нужной пользователю страницы нет, поисковым роботам необходимо видеть эту информацию. Таким образом ошибочная страница не будет индексироваться.

— Как уже говорилось выше, страницу ошибки рекомендуется оформлять в соответствии с общей тематикой сайта.

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

— На странице ошибки стоит в обязательном порядке указать ссылки и информацию, которая может заинтересовать пользователя. Также рекомендуется разместить форму поиска для удержания своих клиентов.

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

Итак, положим, вы уже работаете в админке WordPress. Чтобы создать страницу ошибки, перейдите в панель управления Внешний вид — Редактор .

Найдите в правом сайдбаре файл 404. php и нажмите на него для редактирования.

Шаг 1.

Страницу 404 not found WordPress нужно адаптировать под вашего русскоязычного пользователя. Потому все сообщения внутри кода вы можете заменить на свои. Кавычки и другие элементы, присутствующие в коде, старайтесь не упустить и случайно не удалить.

Шаг 2.

Внедряем форму поиска.

Для этого в код страницы просто нужно вставить следующий элемент кода:

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

Шаг 3.

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

Новые статьи сайта

Разделы сайта

Архивы

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

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

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

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

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

Страница 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 и много чего ещё).

Файл.htaccess дает пользователю возможность свободно управлять web-сервером Apache и применять настройки по отношению к директориям и папкам, которые расположены на сервере.

Успешность развития и продвижения интернет-проекта во многом зависит от правильной адекватной работы сервера, на котором расположен сайт. Сейчас большинство использует Apache – в основном, из-за простоты настройки и большого количества предоставляемых возможностей. Настраивать его работу можно как в главном конфигурационном файле, так и с помощью.htaccess. Расположенные на сервере в отдельных папках, они указывают ему, как именно действовать в данном подкаталоге.

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

Как правильно настроить.htaccess и зачем это нужно

Владельцы сайтов, которые пользуются услугами виртуального хостинга, доступа к httpd.conf чаще всего не имеют. Поэтому единственным способом управления сервером для них будет настройка файла htaccess.
По сути и по структуре, он напоминает httpd.conf. С одним отличием: прописанные в htaccess директивы будут действовать только на тот каталог, в котором расположен этот файл. А также на подчиненные папки и файлы. Но действовать они будут точно так же, как директивы глобального файла конфигурации. То есть, для каждого каталога можно указать отдельный файл.htaccess с нужными настройками, не меняя при этом глобальных настроек сервера и не обращаясь за помощью к хостеру.

Правило: прежде, чем начинать настройку htaccess, в обязательном порядке сделайте копию рабочего файла. Это поможет восстановить данные, если что-то пойдет не так. Неправильные изменения сделают сайт недоступным для пользователей и поисковых роботов. Поэтому очень важно иметь актуальную резервную копию файла конфигурации.

С помощью директив, прописанных в конфигурационном файле, пользователь или владелец сайта получает возможность настройки:

  1. Опций PHP.
  2. Кэширования.
  3. Редиректов.
  4. Обработки ошибок 404.
  5. Перенаправления на https
  6. Управления доступом и пр.

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

Прописываем htaccess правильно

Синтаксис директив файла конфигурации достаточно прост.
При написании пары команд и их опций обязательно разделяются пробелом:

Команда параметр1 параметр2 флаги

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

Обратите внимание, что несоблюдение синтаксиса может привести к появлению ошибок сервера. Правильный htaccess должен быть написан с соблюдением следующих требований:

  • Путь к файлу или директории указывается от корня сервера:
    /home/mdhscyhq/public_html/
  • Домен прописывается с указанием протокола:
    Redirect / https://yoursupersite.ru
  • Название файла должно содержать «точку»:
    .htaccess
  • Файл должен записываться в формате UNIX.

Путь от корня можно спросить у администратора сервера или посмотреть самостоятельно. Для этого достаточно запустить на сайте функцию PHP–phpinfo и посмотреть значение doc_root.

1.Настройка ЧПУ

ЧПУ, или человеко-понятный урл, положительно (хоть и незначительно) влияет на релевантность страницы сайта запросу пользователя с точки зрения поискового робота. А значит – повышает позицию выдачи в поиске. А еще более удобен для пользователя при навигации.

Сравните:
http://yoursupersite.ru/index.html?id=4
и
http://yoursupersite.ru/razrabotka-sayta/

В последнем случае сразу становится понятно, на какой странице мы находимся и какую информацию можно на ней получить.
В ЧПУ можно прописать ключевые слова или фразы: кириллицей или транслитом.
Вот так, к примеру, из стандартного url:
tovar.html?id=101
с помощью изменений настроек ЧПУ в htaccess можно сделать вполне понятный url:
tovar-101.html.

RewriteRule ^tovar-(+)\.html$ tovar.html?id=$10

Или создать древовидную структуру url: category/tovar-123.html

RewriteRule ^category/(+)/(+)\.html$ tovar.html?id=$20

2.Настройка свойств PHP

Даже если хостер закрыл доступ к php.ini, но вам обязательно необходимо изменить некоторые свойства PHP, это можно сделать с помощью файла htaccess.
Пример:

php_value post_max_size 10M php_value upload_max_filesize 32M php_value max_execution_time 200 php_value default_charset utf-8

Директивы:
upload_max_filesize позволяет выполнить загрузку файлов размером до 32Мб (по умолчанию – до 16Мб).
post_max_size увеличивает размер постинга до 10Мб (стандарт – 2Мб).
max_execution_time позволяет использовать сложные скрипты, на выполнение которых необходимо более чем 30 стандартных секунд.

3.Кэширование данных

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

  • mod_headers — дает возможность устанавливать в заголовке ответа сервера разные правила кэширования для файлов различных типов.
  • mod_expires — отвечает за срок «устаревания» файлов, время, по истечении которого, файл будет помещен в кэш браузера.

При схожем смысле модули имеют разный синтаксис. Допускается использование любого из них (выбор зависит от того, какой установлен на сервере).

4.Настройка редирект в htaccess

Настройка файла htaccess позволяет выполнить простую и сложную переадресацию url. То есть, вы можете перенаправить пользователя на другой адрес глобально:

Redirect / http://www.yoursupersite.ru

или при запросе отдельных страниц на сайте:

Redirect / blog http://yoursupersite.ru/blog

Правильный редирект в htaccess имеет следующий синтаксис:

Redirect url_local url_redirect

Существует несколько несложных правил, которые стоит соблюдать при настройке переадресации через htaccess:

  • Редиректы страниц в файле нужно располагать от более частных (вверху страницы) к глобальным. То есть сверху вниз.
  • Необходимо избегать двух и более последовательных редиректов, т.к. это увеличивает время ответа и негативно оценивается поисковыми роботами.

Как правильно сделать 301 редирект в htaccess

В случае переноса сайта на новый домен или смены CMS возникает необходимость перенаправления пользователя со старых url на новые адреса. Редирект с номером ошибки 301 (Permament Redirect) сообщает роботу о том, что документы и страницы были перемещены на постоянной основе. Это позволяет сохранить позиции сайта в поисковых системах, сохранить ссылочную массу и PageRank.
Настройка 301 редиректа в htaccess может быть выполнена различными способами, в зависимости от предустановленного ПО и поставленных целей.
Самый простой вариант:

Redirect 301 /new-1/ http://yoursupersite.ru/new-2/

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

RewriteCond %{REQUEST_URI} !\? RewriteCond %{REQUEST_URI} !\& RewriteCond %{REQUEST_URI} !\= RewriteCond %{REQUEST_URI} !\. RewriteCond %{REQUEST_URI} ![^\/]$ RewriteRule ^(.*)\/$ /$1

А так каждая страница старого домена перенаправляется на страницу с аналогичным url на новом домене:

RewriteCond %{REQUEST_URI} (.*) RewriteRule ^(.*)$ http://site.ru/$1

5.Настройка 404 ошибки в htaccess

Удалили или перенесли страницу с сайта? Пользователь, перейдя по ссылке в поисковой системе или вводя неправильный url, увидит сообщение об ошибке 404. И, скорее всего, закроет вкладку.
Чтобы этого не произошло, более правильным будет отдельно настроить редирект 404 в htaccess и перенаправить посетителя на главную страницу сайта:

ErrorDocument 404 http://www.yoursupersite.ru/

Однако это не всегда такое решение оправдано. Маркетологи рекомендуют создавать отдельную страницу «Not Found», которая будет работать на увеличение конверсии. Подробнее о дизайне страницы «Ошибка 404» можно почитать . А перенаправить пользователя на нее можно с помощью следующих настроек в htaccess:

ErrorDocument 404http://www.yoursupersite.ru/404.html

Аналогичным образом можно настроить вывод сообщений об ошибках:

ErrorDocument 401 http://www.yoursupersite.ru/401.html ErrorDocument 403 http://www.yoursupersite.ru/403.html ErrorDocument 500 http://www.yoursupersite.ru/500.html

6. Настройка редиректа на https в htaccess

Использование сертификата безопасности SSL и протокола https обеспечивает более безопасное соединение и достаточно высоко ценится поисковыми системами при ранжировании. Чтобы перенаправить всех пользователей сайта на этот протокол и тем самым обеспечить надежность передачи данных, достаточно внести в файл htaccess следующие настройки:

RewriteEngine On RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

7.Управление доступом

В файле htaccess с помощью специальных директив можно ограничить доступ расположенным в текущей директории файлам и папкам:

deny from all

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

order deny,allow deny from all allow from 192.168.ХХ.Х

При необходимости, можно ограничить или даже запретить доступ к файлам и папкам каталога по IP. Выполняется это с помощью следующей директивы:

deny from 192.168.ХХ.Х

Вместо заключения

Правильная настройка htaccess обеспечит правильную работу сайта. Однако не стоит забывать о том, что он является только дополнительным конфигурационным файлом, поэтому по возможностям значительно уступает httpd.conf. Но позволяет применять более тонкие настройки к отдельным папкам, расположенным на сервере.

От автора: приветствую вас, друзья. Итак, мы продолжаем цикл статей, посвященных знакомству с одной из популярнейших 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. В левую колонку добавил вывод категорий. Сохраним новый макет и посмотрим результат на сайте.