Администрирование Настройка .htaccess

  • Thread starter Underground Forum
  • Start date
  • Tags
    сервер
Underground Forum

Underground Forum

  • #1

Что такое htaccess​


.htaccess - это вспомогательный файл конфигурации веб-сервера Apache. Все изменения производимые в .htaccess не влияют на глобальные настройки сервера.
С помощью .htaccess можно управлять доступом к файлам и каталогам сайта, создавать ЧПУ ссылки и редиректы, удалять дубликаты страниц из поиска и многое другое.


Синтаксис​

“.” — просто точка.
“*” — означает, что символ или группа символов может присутствовать или отсутствовать неограниченное количество раз.
“?” — означает, что символ или группа символов может присутствовать или отсутствовать.
“+” — обычно ставится перед “*”.
“^” — означает начало новой строки.
“$” — означает конец строки.
“$N” — означает число от 0 до 9. Используется для обращения к шаблону RewriteRule.
“%N” — означает число от 0 до 9. Используется для обращения к шаблону RewriteCond.
“[]” — квадратные скобки, используются для перечисления.
“{}” — фигурные скобки.
“()” — используется для выделения групп символов.
“|” — означает альтернативный выбор.
“\” — слеш нужен для экранирования спецсимволов.


Основные переменные​

SERVER_ADMINПочтовый адрес владельца сервера, указанный при установке.
SERVER_NAMEАдрес сервера, как например domain1.ru
SERVER_ADDRIP-адрес веб-сервера.
SERVER_PORTПорт httpd.
SERVER_PROTOCOLВерсия HTTP протокола сервера.
SERVER_SOFTWAREНазвание софта, на котором работает веб-сервер.
HTTP_USER_AGENTИнформация о веб-браузере посетителя.
HTTP_REFERERАдрес первой страницы.
HTTP_COOKIECOOKIE которые будут передаваться веб-браузером.
HTTP_FORWARDEDАдрес страницы, с которой перешел пользователь.
HTTP_HOSTАдрес веб-сервера, как и SERVER_NAME.
HTTP_ACCEPTИнформация о клиенте.
SCRIPT_FILENAMEПуть до определенной страницы или файла.
PATH_INFOСодержит в себе информацию о конце пути.
QUERY_STRINGСтрока, передающаяся в качестве запроса при работе с CGI скриптами.
AUTH_TYPEИспользуется для определения типа идентификации клиента.
DOCUMENT_ROOTПуть до корневой директории веб-сервера.
REMOTE_ADDRIP посетителя.
REMOTE_HOSTАдрес посетителя.
REMOTE_IDENTИнформация об удаленном пользователе.
REMOTE_USERПохож на REMOTE_IDENT.
REQUEST_METHODОпределяет тип запроса.


Примеры​

Перенаправление с http на https
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [QSA,R=301,L]

Простой, 301 редирект на другой сайт:
Redirect 301 / http://newsite.ru/

Перенаправление пользователя на страницу о технических работах:
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^X.X.X.X$
RewriteCond %{REQUEST_URI} !^not-available.html
RewriteRule ^.*$ not-available.html
 
Last edited:
Top