Что такое .htaccess

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

Где найти файл htaccess?

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

Как создать. Синтаксис

Так как это текстовый файл, то для его создания переходим в простой текстовый редактор, Блокнот или NotePad. Apache чувствителен к регистру, поэтому пишем название файл маленькими латинскими буквами, перед названием ставим точку. MacOS не видит системные файлы с точкой в начале, поэтому точку не ставим, позже, при переносе файла на сервер, его нужно будет переименовать. Тип документа — «все файлы», перенос текста по словам. Новое действие прописанное в htaccess это директива, каждая директива прописывается с новой строки. Файл поддерживает комментарии через #, с помощью этого символа можно не только оставлять появления к написанным командам, но и отключать неиспользуемые настройки без удаления. Все, что прописано после # не воспринимается веб сервером как команда к исполнению.

Возможности .htaccess для настройки сайта

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

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

Что такое .htaccess

  1. Редирект или простое перенаправление

Правило 301 позволяет перенаправлять пользователей с синонимов сайта на основный домен. Команда позволяет также на постоянной основе ввести правило отправлять пользователей на новый адрес сайта, в случае его изменения. Директива позволяет также заменять страницы, например, при переходе потребителя на главную страницу, он попадает в каталог интернет-магазина или в раздел «о компании».

Что такое .htaccess

  1. Сложное перенаправление mod_rewrite

Один из популярных модулей Apache, позволяющий менять входящий URL страницы. Правило меняет сложный адрес страницы с большим количеством символов на более простой для восприятия адрес. Модель состоит из двух директив, RewriteRule и rewriteCond. Первая определяет правила перезаписи URL ли его части, вторая отвечает за выбор способа поиска совпадений, например по имени хоста или по запросу. В htaccess пример замены небезопасного соединения hhtp на https c защитой SSL сертификатами будет выглядеть так

  1. Изменения в PHP

Чаще всего провайдеры закрывают доступ к настройкам PHP через файл php.ini, но это не значит, что администратору сайта не внести туда необходимые корректировки. Мы уже знаем, что такое htaccess и как он работает. Через директиву upload_max_filesize можно разрешить загрузку файлов до 32 гб, а max_execution_time позволит реализовывать сложные скрипты, на исполнение который требуется больше 30 секунд, ограниченных жостером. Сценарий php_value error_log создаст отдельный файл для ведения учета всех ошибок php.

Что такое .htaccess

  1. Кэширование

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

Что такое .htaccess

  1. Работа с ошибками

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

Что такое .htaccess

  1. Кодировка

Иногда браузер не может понять, в какой кодировке документ будет отображаться корректно. Для этого используют модули htaccess, прописывающие сценарий, по которому будут кодироваться все попадающие на сервер данные. Команда AddDefaultCharset определяет кодировку для каждой страницы сайта, например так «AddDefaultCharset
Windows-1251». Таким образом задается кодировка по умолчанию, это поможет браузеру корректно отобразить страницу сайта.

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

Человеко понятный URL и выглядит лучше и в поисковой выдаче идет выше более сложных. Модуль RewriteRule позволяет упростить адрес сайта и сделать его понятнее и для поисковой машины и для навигации пользователей. Большой плюс настройки ЧПУ в htaccess в том, что понятный URL можно прописать не только латиницей, но и кириллицей, для максимального удобства посетителей ресурса.

Полезные советы

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

Hosting2go.ru