Файл .htaccess: базовые правила работы
Файл .htaccess — это текстовый файл, определяющий способ использования хостингового сервера Apache. Содержимое этого файла позволяет управлять параметрами доступа, полномочиями пользователей и многими другими настройками. В этой статье мы расскажем о базовых правилах работы с .htaccess-файлом.
Важно понимать, что некоторые настройки Apache могут быть установлены только через файл .htaccess, поэтому понимание основ этого файла становится основой для работы с хостинговым сервером. В следующих разделах мы рассмотрим основные правила работы с .htaccess:
- Расположение файла;
- Удаление и создание .htaccess-файла;
- Синтаксис и правила..
Что такое .htacces
Файл .htaccess - это конфигурационный файл Apache, позволяющий пользователям хранить настройки для веб-сервера на уровне директории. Файл .htaccess находится в директории, желающей изменить конфигурацию сервера, и может использоваться для настройки почти всех аспектов работы веб-сервера. Примеры возможных функций:
- Запрет или допуск для посетителей определенных каталогов сайта,
- Модификация директив относительно заголовков,
- Перенаправление запросов на новый URL или имя хоста,
- Включение страницы ошибки для посетителей.
Применение .htaccess
Файл .htaccess позволяет контролировать правила работы сайта и изменять результаты работы сервера Apache для каждой директории и поддиректории.
Применение .htaccess позволяет изменить работу сайта с целью оптимизации его безопасности, профилактики нежелательного доступа и переадресации. Основными возможностями .htaccess являются:
Пошаговая инструкция создания файла .htaccess
Пошаговая инструкция по созданию файла .htaccess:
Дополнительно может потребоваться следующее:
Синтаксис .htaccess
Файл конфигурации сервера .htaccess позволяет управлять параметрами, такими как редиректы, доступ к файлам, настройка URL и защита от атак. Файл htaccess строится по конкретным правилам.
У каждого правила есть команда (по-русски это называется директива) и аргументы (значения). Одна директива или аргумент может быть представлен в одном строке. Если необходимо, каждой директиве можно задать несколько аргументов.
Общая структура правил .htaccess представлена ниже:
Пример настройки редиректа в .htaccess может выглядеть следующим образом:
В данном примере Redirect - директива, 301 - код ответа сервера, /oldpage.html - адрес старой страницы, а http://newpage.html - адрес новой страницы.
Работа с .htaccess
С помощью файла .htaccess можно изменить настройки сервера Apache, например, чтобы просматривать статические страницы либо установить определенные директивы. При использовании .htaccess необходимо знать некоторые базовые правила работы:
-
- Кэширование для динамически генерируемых страниц;
- Переадресация страниц, изменение URL адресов;
- Защита от спам-ботов, злоумышленников;
- Задание параметров сервера для директорий или файлов, например, установка даты истечения срока для кэшированных файлов;
- Защита от подделки идентификатора пользователя (Basic HTTP Auth);
- Ограничение доступа к файлам и директориям;
- Запрет использования определенных типов файлов;
- Запрос авторизации при заходе на страницу;
- Изменение настроек PHP.
- Открываем программу для редактирования текста (Notepad или любую другую);
- Набираем актуальные правила и установки;
- Сохраняем файл с расширением .htaccess;
- Закачиваем файл по FTP в директорию сайта.
- Указать в панели управления хостинга каталог, в котором лежит файл .htaccess;
- Включить режим перезаписи для данного каталога;
- Проверить, правильно ли работают правила на сайте.
- Директива1 аргумент1
- Директива2 аргумент1 аргумент2
- Директива3 аргумент1 аргумент2
- Директива4 аргумент1 аргумент2
- Redirect 301 /oldpage.html http://newpage.html
- Файл ".htaccess" должен быть в кодировке "ASCII"
- Внутри файла одна директива на одну строку;
- Директивы в файле ".htaccess" начинаются со знака "#" или точки с запятой ";";
- При создании правила в ".htaccess" сначала обязательно указывают директиву в формате "RewriteRule";
- После директиву указывается регулярное выражение по которому будет идти обработка;
- После регулярного выражения перечисляется символ перенаправления;
- Директива "RewriteRule" может иметь дополнительные флаги управления.