Описание директив .htaccess
.htaccess — файл дополнительной конфигурации веб-сервера Apache, а также подобных ему серверов. Позволяет задавать большое количество дополнительных параметров и разрешений для работы веб-сервера в отдельных каталогах (папках), не предоставляя доступа к главному конфигурационному файлу, таких как управляемый доступ к каталогам, переназначение типов файлов и т. д.
Перенаправление (редирект)
На другой адрес
Redirect / http://www.example.com
При запросе определенных страниц
redirect /data http://www.expample.com/data
redirect /forum http://forum.example.com
По маске имени файла
Следующая строки определяют, что все запросы кроме запросов к файлам с расширениями .gif и .jpg будут перенаправлены на файл index.php
RewriteEngine On
RewriteRule !.(gif|jpg)$ index.php
Работает только при наличии mod_rewrite
По IP-адресам
Если посетитель имеет IP-адрес 192.
RewriteRule (.*) http://mydomain.com/$1 [R=301]
Работает только при наличии mod_rewrite
Индексные страницы
Переопределение индексного файла
DirectoryIndex index.html index.php index.shtml
Запрет на отображение содержимого каталога при отсутствии индексного файла
Options -Indexes
Типы файлов
Изменение обработчика по типу файла
Пример переопределения HTML файлов для обработки их с помощью PHP
AddHandler application/x-httpd-php5 .php .htm .html .phtml
Обработка ошибок
ErrorDocument 401 /401.html
ErrorDocument 403 /403.html
ErrorDocument 404 /404.html
ErrorDocument 500 /500.html
Кодировка
Отдаваемых файлов
AddDefaultCharset windows-1251
Загружаемых файлов
CharsetSourceEnc windows-1251
Управление доступом
Запрет доступа к файлам
Запрет доступа ко всем файлам и каталогам в текущем каталоге
deny from all
Запрет доступа к определенному файлу
deny from all
Запрет доступа к файлам по маске
deny from all
Спецсимволы для определения маски
? — любой одиночный символ * — любая последовательность символов, исключая символ / (слэш)
Запрет доступа к файлам по регулярному выражению
deny from all
Определение доступа по IP
order deny,allow
deny from all
allow from 192. 168.11.1
Строка order deny,allow определяет, в каком порядке следует выполнять директивы. Сначала выполняется директива запрета доступа, а затем разрешается доступ только для IP-адреса 192.168.11.1. Если в первой строке поменять порядок следования директив на order allow,deny, то доступ для данного IP-адреса не будет открыт, так как директива deny, выполняемая последней перекроет действия директивы allow.
Закрытие каталогов паролем
файл .htaccess
AuthName «Auth message»
AuthType Basic require [username2] … [usernameN]>
Пароли хранятся в файле .htpasswd
Полезности htaccess | Битрикс-веб-мастер | pai-bx.com
В данном посте буду собирать все полезности для htaccess. Все в одном месте решил собрать для себя, чтобы не рыться каждый раз в поисках нужного решения. Буду накидывать информацию по мере необходимости
Интересный образец файла htaccess с основными задачами
############################################################################ #### Cтандартный .https://%1%{REQUEST_URI} [L,R=301]
Часто используемые директивы .htaccess — Справка IONOS
Для веб-хостинга Linux и управляемых выделенных серверов
Узнайте о некоторых часто используемых директивах .htaccess и их назначении.
Активировать список каталогов
Вы можете использовать список каталогов для отображения структуры папок и файлов вашего веб-пространства в браузере. Затем каждый посетитель может увидеть это снаружи. В целях безопасности мы по умолчанию отключили эту функцию на наших серверах. Вы можете включить его, добавив приведенный ниже код в файл .htaccess.
# Активирует список каталогов (деактивирован по соображениям безопасности) # Опции +Индексы
Отключить сопоставление файлов
При отключении функции CheckSpelling сервер не будет отображать список файлов, которые кажутся совпадающими со страницей с ошибкой, или автоматически загружать ближайшее совпадающее имя страницы.
# Предотвращает обнаружение сервером орфографических ошибок или неправильных # использование заглавных букв в именах файлов. Вместо этого показывает ошибку «страница не найдена» # загрузки файла или страницы, которая наиболее точно соответствует написанию. # Проверить правописание
Разрешить другие расширения файлов для приложений CGI
Если вы хотите запускать приложения CGI с расширениями файлов .cgi или .asp, определите это с помощью следующей команды.
# Позволяет запускать файлы с другими расширениями как CGI # AddHandler cgi-скрипт .cgi .asp
Указание типа MIME для определенных типов файлов
Если вы хотите изменить, какое приложение используется для открытия файла указанного типа, определите тип MIME соответствующим образом.
# Принудительно использовать тип MIME Microsoft Excel для всех файлов .csv. # Затем файл открывается в Excel, а не в текстовом редакторе.# Приложение AddType/vnd.ms-excel.csv
Активировать механизм перезаписи
Эта базовая функция необходима при создании правил перезаписи
# Активировать механизм перезаписи # Переписать двигатель на
Настройка правил перезаписи
Если вы хотите перенаправить вызов интернет-адреса (URL) другим заранее определенным способом, вы можете указать это с помощью RewriteRules. 9([a-z]+)\.html$ /index.php?$1 [R,L]
Использовать пользовательские страницы ошибок
Вы можете определить, какая страница должна отображаться для различных ошибок, таких как ошибка 404 СТРАНИЦА НЕ НАЙДЕНА.
# Правило перезаписи для отображения страницы errordocument.html всякий раз, когда # файл или папка не найдены, а также при следующих # Возникают ошибки HTML: 400, 401, 403, 404 и 500 # RewriteEngine включен RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d Правило перезаписи (.*) /errordocument.html ErrorDocument 400 /errordocument.html ErrorDocument 401 /errordocument.html ErrorDocument 403 /errordocument.html ErrorDocument 404 /errordocument.html ErrorDocument 500 /errordocument.html
Из-за настроек безопасности или подобных, мы оставляем за собой право в любое время полностью или частично перезаписать эти директивы или запретить их использование.
Использование директив PHP в пользовательских файлах .htaccess
Использование директив PHP в пользовательских файлах .htaccessPHP позволяет вам контролировать многие аспекты вашего веб-сайта с помощью директив в файлах .htaccess . Узнайте о некоторых из этих директив здесь.
В этих статьях предполагается, что вы уже настроили пользовательскую .htaccess файл. Если вы еще этого не сделали, сначала прочитайте эту статью.
Настройки сообщения об ошибке PHP в файле .htaccess
Вы можете контролировать, будет ли PHP отображать сообщения об ошибках для посетителей веб-сайта, используя директиву display_errors в пользовательском файле .
htaccess. В этой статье показано, как включать и отключать сообщения об ошибках PHP с помощью директивы display_errors в файле .htaccess.Включение и отключение регистрации ошибок PHP с помощью файла .htaccess
Вы можете использовать директивы log_errors и error_log в пользовательском файле .htaccess для настройки ведения журнала ошибок PHP, и в этой статье показано, как включать и отключать ведение журнала ошибок.
Установка часового пояса PHP в файле .htaccess
По умолчанию серверы A2 Hosting настроены на использование восточного стандартного времени США. Узнайте, как изменить настройку часового пояса PHP с помощью директивы date.timezone в файле .htaccess для вашего веб-сайта здесь.
Установка максимального времени выполнения PHP в файле .htaccess
По умолчанию максимальное время выполнения скриптов PHP установлено на 30 секунд, но вы можете изменить этот интервал с помощью директивы max_execution_time.
Установка директивы register_globals в файле .htaccess
Вы можете включать и отключать директиву register_globals в пользовательском файле .htaccess. Эта статья относится только к PHP 5.3 и более ранним версиям.
Установка директивы волшебных кавычек в файле .htaccess
Вы можете включать и отключать директиву волшебных кавычек в пользовательском файле .htaccess. Эта статья относится только к PHP 5.3 и более ранним версиям.
Установка максимального размера загружаемого файла PHP в файле .htaccess
Вы можете изменить максимальный размер загружаемого файла для PHP-скриптов, используя директивы upload_max_filesize и post_max_size в файле .htaccess.
Установка директивы PHP allow_url_fopen
Большинство директив PHP можно установить в файле .htaccess. Однако директива allow_url_fopen — это особый случай.
В этой статье показано, как настроить директиву PHP allow_url_fopen. Обратите внимание, что эта статья относится только к управляемым учетным записям VPS и выделенных серверов.Установка лимита памяти PHP-скрипта в файле .htaccess
По умолчанию ограничение памяти для сценариев PHP установлено на 128 мегабайт, но вы можете изменить это значение с помощью директивы memory_limit в пользовательском файле .htaccess.
Установка директивы max_input_vars в файле .htaccess
По умолчанию максимальное количество входных переменных для PHP-скриптов равно 1000, но вы можете изменить это количество с помощью директивы max_input_vars в файле .htaccess. Узнайте, как в этой статье.
Установка директивы output_buffering в файле .htaccess
По умолчанию PHP не буферизует вывод во время обработки скрипта. Однако вы можете изменить это поведение, используя директиву output_buffering в файле .htaccess. Эта статья содержит фрагменты .