Файл htaccess — полное руководство по настройке
В данной статье Вы узнаете о настройках файла htaccess: о редиректах и перезаписи, а также о конфигурировании веб-сервера и его защите.
Что такое .htaccess? (Hypertext Access)Это файл-конфигуратор на уровне каталога, который загружается сервером и дает возможность существенно изменить его поведение (перенаправления, включение/отключение определенных функций). Этот файл также позволяет защитить некоторые разделы сайта.
Из-за специфики названий тип файла htaccess не всегда заметен. Чтобы его увидеть, необходимо активировать “ dot files ” или “ .files ” в вашем программном обеспечении FTP/Cpanel. Если возникают сложности, можно создать и редактировать файл как .txt (просто изменить расширение и название во время загрузки).
Всегда делайте бэкап htaccess, когда собираетесь внести какие бы то ни было изменения. Если ошибетесь, сайт высветит ошибку 500 Internal Server Error, и для последнего изменения можно будет просто поместить символ # перед кодом в файле htaccess.
- Вы можете комментировать ссылки в htaccess с помощью # , количество символов не имеет значения; к примеру, ## или ### можно использовать для описательных комментариев, а один # — для активации/деактивации кода.
- Используйте блокнот для редактирования в Windows, это удобно.
- Всегда делайте бэкап.
- Htaccess применяется к каталогу, в котором находится, и, таким образом, ко всем каталогам уровнем ниже; это значит, что при перемещении в корневой каталог, он сможет управлять всем сайтом.
- Ошибки в htaccess провоцируют 500 Internal Server Error ( внутреннюю ошибку сервера), но без паники — восстановите резервную копию или откомментируйте последний код.
Просто поместите этот код в файл htaccess в верхней части, чтобы включить перезапись.
Управление ошибками## Rewrite Engine Code ##
Options +FollowSymLinks
RewriteEngine on
По умолчанию браузер показывает страницу 404, с помощью htaccess страницу можно изменить. Создание интересной страницы 404 — тема для отдельной статьи.
Вы можете создавать собственные страницы в любом формате PHP/HTML.
Они не обязательно должны быть в корневом каталоге, но обязательно на одном сервере.
Если поместите URL целиком, тогда статус 404 не появится, скорее всего будет 301 или 200 Error.
ErrorDocument 404 http://www.example.com/404.html
## Error Handling Codes ##
ErrorDocument 401 /401.html
ErrorDocument 403 /403.html
ErrorDocument 404 /404.html
ErrorDocument 400 /400.html
Можно использовать больше или меньше кодов. Полный список кодов ошибок по ссылке Wikipedia.
Временная блокировка индексацииК примеру, может понадобиться, чтобы некоторое время люди вначале попадали на промостраницу. (Вы можете использовать index.php и для других целей).
Это больше относится к сфере общей безопасности и юзабилити, чем к SEO .
Этот сниппет кода блокирует доступ пользователей к спискам файлов.
## Block Index Display ##
Options All -Indexes
Set Default Index File
В любом случае, это удобный код. Нужно только изменить файл; тип файла не обязательно должен быть в HTML.
Защита Htaccess## Set Default Index Files ##
DirectoryIndex newindex.html
Ваш файл htaccess потенциально уязвим, поэтому обезопасьте его.
## Secure htaccess file ##
<Files .htaccess>
Order Allow,Deny
Deny from all
</Files>
Если у вас WordPress, такой код защитит файл wp-config.php.
Защита локации паролем## Secure wp-config.php ###
<Files wp-config.php>
Order Allow,Deny
Deny from all
</Files>
С помощью htaccess вы можете защитить определенные сегменты сайта. Вот полезный инструмент для создания этих файлов http://www.tools. dynamicdrive.com/password/
Так, с помощью htaccess и похожего файла htpasswd вы можете блокировать общий доступ к любому файлу или папке на сайте.
Используя тот же метод, что и для htaccess, создайте текстовый файл без названия, тип файла htpasswd. Он будет содержать список имен пользователей и паролей для входа в закрытые разделы, формат такой:
MyUsername:MyPassword
Нужно загрузить файл htpasswd в соответствующее место на сервере с помощью любой программы для пересылки файлов, это должен быть каталог не для общего доступа (не помещайте в /www/ или /htdocs/ ). И еще нужно записать путь файла из корневого каталога, это может выглядеть так:
“ /private/script/.htpasswd “.
После загрузки в htaccess добавляется новый раздел.
Блокировка прямых ссылок (хотлинкинг)AuthName “Restricted Area”
AuthType Basic
AuthUserFile /private/script/.htpasswd
<Files /downloads>
require valid-user
</Files>
htaccess экономит полосу пропускания, таким образом решается проблема известная как хотлинк ( включение в веб-страницу ресурсов чужого сервера) . http://(.+\.)?livejournal\.com/ [NC]
RewriteRule .*\.(jpe?g|gif|bmp|png)$ – [F]
Это крайняя мера, которую стоит применять в случаях, когда имеются частые хотлинкеры .
«Сохранить как»Если у вас блог или другой контентный сайт, определенные файлы будут провоцировать диалог “Save As” (сохранить как), вместо того, чтобы браузер их загружал. Этот код идеален для каталога ресурсов.
Целесообразнее выбрать определенный подкаталог для кода.
Перенаправить всех, c сохранением IP## Force a file to download with a “Save As” ##
AddType application/octet-stream .doc .mov .avi .pdf .xls .mp4
Этот способ удобен во время внеплановых работ по технической части.
## Redirect Everyone but Selected IP Address ##
ErrorDocument 403 http://www.myoldsite.com
Order deny,allow
Deny from all
Allow from 111.111.111.111
Понадобится изменить ваш собственный IP-адрес (скопировать линию для каждого IP сотрудников), и отключить это, когда все будет готово.
В случае масштабной спам-атаки, можно заблокировать IP-адреса, которые содержатся в логах. Достаточно добавить этот сниппет кода, чтобы закрыть доступ к сайту.
Также вы можете с помощью этого сайта сгенерировать код блокировки любых IP:
http://www.htaccesstools.com/block-ips/
Раздел 2: перенаправления и перепись## Block IP Address ##
order allow,deny
deny from 127.0.0.1
deny from 127.0.0.2
deny from 127.0.0.3
allow from all
Htaccess позволяет переписать и изменить URL, заменить автоматически созданные ссылки.
Перенаправление с http:// на wwwЭто старая проблема — добиться, чтобы сайт индексировался и в http://mydomain.com, и в www.mydomain.com.
Иногда бывает так, что сайт индексируется дважды, что не совсем хорошо в плане SEO.
Данная часть кода превратит любой запрос для версии http в www.
Стандартное перенаправление 301## Redirect non-www to the www version ##
RewriteCond %{HTTP_HOST} ^example.
(.*)$ /downtime.html [R=302,L]
## Redirect all Pages to Secure ##
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Перенаправление 301 сообщает Google и браузерам, что запрашиваемая страница перемещена в другое место.
Такой способ подходит, когда вы хотите удалить страницы сайта, или изменить названия ссылок, — так наносится минимальный ущерб продвижению.
Это намного лучше в сравнении со страницей 404, так, по крайней мере, внешние ссылки будут попадать на рабочие страницы.
## Standard 301 Redirect for Permanent Changes ##
redirect 301 /old-page.html http://www.example.com/newpage.html
Нужно изменить только две ссылки: первая — это старая страница, связанная с htaccess (обычно в корне), и вторая — полная ссылка на новую локацию. У вас может быть столько линий, сколько вы хотите перенаправить, но не стоит перенаправлять один и тот же url несколько раз. /old-folder(.*)$ http://www.example.com/new-page.php
Опять же, кастомизировать эти коды очень просто. Нужно лишь вписать старый каталог и новые локации . Если хотите перенаправить на новый подкаталог, просто измените окончание url, чтобы там был подкаталог, но проверьте, что вы оставили $1 в первом примере.
302Разница между пренаправлениями 301 и 302 в том, как их фиксируют поисковые роботы. Google вряд ли обновит свой индекс для 302, но для 301 это очень даже вероятно. 302 стоит использовать только тогда, когда изменения временные и вы хотите, чтобы Google их игнорировал. Чтобы превратить перенаправление в 302, просто измените цифру в начале. Это работает применительно ко всем сниппетам кодов перенаправления, где используется 301.
Изменение типа запросов файлов## Standard 302 Redirect for Temporary Changes ##
redirect 302 /old-page.html http://www.example.com/newpage.html
Иногда нужно изменить типы файлов, для лучшего сжатия изображений, или для специального дополнения с php; htaccess справится со всем этим. /]+)\/(.*)$ http://www.example.com/$1/$2/$3 [R=301,L]
Иногда возникает ситуация, когда нужен новый домен, но нужно и сохранить все, что было сделано по части SEO для старого домена.
У вас должен быть Google Webmaster Tools, установленный на старом домене, затем вы сможете сообщать Google, что перемещаете домены.
Есть два способа: с сохранением запросов и без. Если у нового домена будет такой же сайт и столько же страниц и ресурсов, тогда лучше сохранить запросы. Другими словами, пользователь, запрашивающий /best-page.html на старом сайте, увидит best-page.html на новом.
Вы можете сделать полное перенаправление домена без сохранения запросов.
По сути, нужно отдельно перенаправить разделы веб-сайта на соответствующие разделы нового сайта, но есть более простой способ.
Перепись динамического URL## Redirect an Entire Domain – No Preservation ##
Redirect 301 / http://www.newdomain.com
Большинство динамических URL выглядят примерно так:
http://www.
/]+)
RewriteCond %{QUERY_STRING} !foo=bar
Задается маппинг старого URL на новом.
Здесь три линии; первая определяет место старого URL на новом, вторая — место 1-ой строки запросов, третья — точка остановки, чтобы избежать беспрерывного перенаправления.
Первая линия позволяет установить формат новой страницы, в нашем случае это http://www.mysite.com/posts-about-widgets.php.
Вы можете изменить первую часть URL.
В скобках в конце — поле значения строки запросов, которая сюда переносится. Так URL выглядит достаточно динамично, чтобы отображать отношения с базой данных.
В этом примере — посты из категории виджетов, поэтому нужны соответствующие ключевые слова в URL.
PHP — тип файла, который используется в данном случае, но это может быть html или htm.
Третья выделенная часть содержит оригинальный URL и строку запросов. Включено только поле, значение переносится как переменная.
Вторая линия содержит ссылку на переменную, понадобится изменить поле — добавить ваш URL, а все остальное оставить. old\.php$ /new-folder/%1/? [L,R=301]
Здесь все так, как и прежде, но в данном случае мы назвали первый подкаталог вручную и позволили полю стать вторым подкаталогом.
Раздел 3: скорость и тонкая настройкаПоследний раздел этого руководства посвящен тонкой настройке, которая позволяет улучшить скорость и производительность сайта. Многие из этих сниппетов кода зависят от активности отдельных модулей или разрешений, это значит, что разные серверы и хосты могут вести себя по-разному.
GZIP compressionGZIP compression — серверная функция, которая уменьшает вес веб-страниц и скриптов прежде, чем они отправляются в браузер.
Прежде эта технология была довольно несовершенной, в особенности в безопасных разделах и платежных шлюзах. Сейчас все на порядок лучше. Большая часть браузеров (даже старых) принимает GZIP.
Есть несколько вариантов активировать GZIP. Не нужно изменять код — просто скопируйте и вставьте.
На этом сайте можно проверить, активирован ли GZIP на вашем ресурсе, и сколько времени/места сэкономлено. Mozilla/4.0[678] no-gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
Активация кэшированияКэширование позволяет постоянным посетителям не загружать повторно каждый элемент сайта. Если у вас WordPress, тогда можно взять несколько плагинов, например WP Hyper Cache.
Если у вас статический сайт, htaccess дает возможность применить кэширование. Стоит все перепроверить. Если у вас нестандартная CMS, или какой-либо динамический контент, ошибки с кэшированием могут привести к тому, что сайт перестанет обновляться. Поэтому стоит консультироваться с разработчиками.
Если нужна более расширенная команда кэширования или больший уровень контроля, лучше использовать скрипт в этой ветке WMW , читайте внимательно, чтобы точно знать, что делаете.
У кода, размещенного ниже, другие настройки кэширования для разных типов файлов. Вы также всегда можете отключить этот код.
## Enable Caching #### Files to Cache for One Month ##
<FilesMatch “\.
(flv|gif|jpg|jpeg|png|ico|swf)$”>
Header set Cache-Control “max-age=2592000”
</FilesMatch>
## Files to Cache for One Week ##
<FilesMatch “\.(js|css|pdf|txt)$”>
Header set Cache-Control “max-age=604800”
</FilesMatch>
## Files to Cache for One Day ##
<FilesMatch “\.(html|htm)$”>
Header set Cache-Control “max-age=43200”
</FilesMatch>
## Disable cache for script files ##
<FilesMatch “\.(pl|php|cgi|spl|scgi|fcgi)$”>
Header unset Cache-Control
</FilesMatch>
GZIP и кэширование существенно улучшают производительность сайта.
Минимизация 404 за счет проверки грамматических ошибокCheck Spelling — это модуль сервера Linux Server Module. Check Spelling проверяет сервер на предмет наличия подобных URL.
К примеру, пользователь допускает ошибку, вписывая в браузер такой адрес:
http://www.
mysite.com/caje/red.html
Но на самом деле он/она хотел написать:
http://www.mysite.com/cake/red.html
Check Spelling фиксирует такую незначительную ошибку и исправляет ее (если, конечно, не существует caje/red.html). Также учитывается состояние регистра строчных и прописных символов в URL.
##Make Linux correct case sensitive urls/slight typos in urls##
CheckSpelling On
Возможности htaccess — Boodet.online
480 auto
Администрирование
Поделиться Твинтнуть Поделиться Запинить Отправить Поговорим на такую важную тему, как htaccess. Попробуем максимально подробно и понятно рассказать, для чего он нужен, как файл правильно настроить, рассмотрим его возможности использования и т.д. Также сразу ответим на очень популярный вопрос — чем открыть файл htaccess? Для этого подходят различные текстовые редакторы. Проще всего пользователям ОС Windows […]
IT GIRLPost Views: 54
Возможности htaccess Блог 2022-08-02 ru Возможности htaccess 286 104
Поделиться
Твинтнуть
Поделиться
Запинить
Отправить
Поговорим на такую важную тему, как htaccess. Попробуем максимально подробно и понятно рассказать, для чего он нужен, как файл правильно настроить, рассмотрим его возможности использования и т.д.
Также сразу ответим на очень популярный вопрос — чем открыть файл htaccess? Для этого подходят различные текстовые редакторы. Проще всего пользователям ОС Windows открыть файл с помощью «Блокнота».
Что за файл?
Итак, если говорить простыми словами, то htaccess — это специальный конфигурационный файл, позволяющий изменять/дополнять параметры веб-сервера Apache. Вносимые в файл правки не будут сказываться на всем сервере, они повлияют только на выбранный каталог (тот, где располагается изменяемый файл) и вложенные в него элементы.
Таким образом, если разобраться, как настроить htaccess для сайта, можно вносить изменения в конкретный сайт или определенную страницу.
Для чего используется?
Теперь подробно разберемся с вопросом, для чего нужен htaccess. С его помощью можно настраивать разные параметры функционирования сайта.
Настройка редиректов
Файл предоставляет владельцам возможность сайтов тонко настраивать редиректы (перенаправления), например, с одного домена на другой, с http на https и т.д.
Кеширование
Файл htaccess дает возможность задать определенные параметры по использованию кеша браузера всех посетителей сайта. К примеру, с помощью таких настроек можно существенно ускорить работу ресурса.
Сжатие
С помощью htaccess, а также mod_gzip или mod_deflate можно обеспечить качественное сжатие файлов сайта, благодаря чему пользователи будут видеть сайт, не перегруженный различными тяжелыми медиаэлементами. Скорость загрузки будет увеличена, однако иногда это также может стать причиной повышения нагрузки на серверный процессор.
Запрет доступа
Файл дает возможность ограничивать доступ к определенным файлам или всему сайту для отдельных посетителей либо разрешать доступ только для избранных посетителей.
Перенаправление в случае ошибок
Файл может осуществлять обработку различных ошибок, например, 500 или 404, а также перенаправлять посетителей на специально сделанную «заглушку».
Синтаксис htaccess
Файл характеризуется простым и предельно понятным синтаксисом: прописываемые команды всегда начинаются с новой строки, а после знака # добавляются комментарии, не учитываемые сервером при обработке страницы. При этом веб-мастеру не нужно перезагружать сервер. Все изменения начнут работать по их внесению.
Все правила для веб-ресурса и внутренних страниц задаются с помощью определенных выражений, спецсимволов и переменных. Разберем наиболее популярные и часто применяемые из них.
$ — конец строки;
* — любое число символов;
. — любой символ;
? — один конкретный символ;
[ 0-5 ] — определенная последовательность символов, к примеру, от 0 до 5, как в примере;
| — «или» позволяет выбрать одну или другую группу;
() — выбор групп символов.
Переменные
Основные переменные файла пишутся в виде %{…}, например: %{HTTP_USER_AGENT}.
Наиболее популярные:
HTTP_USER_AGENT — данные по типу/версии браузера пользователя, а также установленной ОС;
HTTP_REFERER — адрес страницы, с которой пришел посетитель;
REMOTE_ADDR — IP-адрес посетителя сайта;
HTTP_FORWARDED — страница, с которой перешел пользователь;
REQUEST_URI — запрошенный ресурс в строке http запроса;
SERVER_NAME — адрес сервера;
QUERY_STRING — параметры запроса.
Настройка редиректов
Файл htaccess нужен для выполнения различных настроек, однако чаще всего его применяют для переадресации.
Прежде чем приступать к настройке переадресации, необходимо убедиться в том, что это вам реально требуется. К примеру, редирект на страницы со слешем по стандарту уже настроен во многих CMS.
Виды редиректов и как их настроить
Существуют различные варианты редиректов, которые можно использовать на сайте. Перечислим основные:
300 — сообщает о возможности перейти по одному запросу на несколько страниц;
301 — постоянная переадресация;
302 — временная переадресация;
303 — редирект на схожую по содержанию страницу;
305 — переадресация к подключению через прокси-сервер.
Существуют и другие виды переадресации, однако в настоящее время они практически не используются. На практике многие вебмастера и администраторы вообще используют только один вид редиректа — 301.
Постраничный редирект
Такая переадресация может потребоваться:
Для настройки постраничного редиректа можно использовать следующую команду:
Redirect 301 /page1/ https://mysite.com/page2/
Удаление дублей
Для успешной работы сайта очень важно, чтобы на нем не было копий страниц. Для этого требуется настраивать:
Это делается с помощью mod_rewrite, содержащего спецкоманды для сложного перенаправления.
Код постоянной переадресации на слеш:
Код постоянной переадресации на страницу без слеша:
Настройка главного зеркала сайта
При настройке основного зеркала необходимо заранее определиться, какой из адресов будет выбран в качестве главного. SSL давно являются лучшим выбором, поэтому практически все специалисты в области рекомендуют устанавливать его и настроить соответствующее правило в htaccess.
Редирект на https
Команда:
Без www на www
Команда:
С www на без www
Команда:
Междоменной редирект
Нередки случаи, когда сайт с уже сложившейся аудиторией и постоянным трафиком по каким-то причинам переезжает на другой домен. В этом случае необходимая специальная переадресация.
Можно воспользоваться командой:
Запрет загрузки изображений
Очень часто недобросовестные сайтоделы грешат тем, что заимствуют уникальный контент у других. Это прямое нарушение авторского права, однако далеко не все готовы искать всех нарушителей и пытаться отстоять свои интересы в суде. Поэтому можно запретить загрузку изображений со своего сайта с помощью команды:
Запрет доступа
Можно выделить большое количество групп посетителей, которым лучше запретить доступ к сайту, в первую очередь — это боты.
Для ботов
Команда:
Избранные IP
Владелец может запретить доступ к сайту отдельным пользователям по IP.
Прописываем:
allow from all
deny from IP1
deny from IP2 и т.д.
Для всех, кроме указанных
В некоторых случаях имеет смысл запретить доступ к ресурсу всем посетителям, кроме определенной группы. В такой ситуации поможет команда:
ErrorDocument 403 https://mysite.com
Order deny,allow
Deny from all
Allow from IP1
Allow from IP2 и т.д.
Для подсети
Команда:
allow from all
deny from …
Маска сети вписывается после «deny from».
Для отдельной страницы
Для запрета доступа к отдельным страницам или файлам потребуется использовать команду:
Конкретная команда запрещает доступ к файлу «myfile.txt». Вместо него можно прописать любой другой.
Защита доступа
Для защиты доступа требуется создать файл .htpasswd в блокноте и в нем нужно будет прописать логины и пароли.
Чтобы повысить безопасность рекомендуется шифровать пароли.
Пароль на файл
Команда для установки пароля на файл:
Пароль на папку
Команда:
Вместо указанного в примере значения «/pub/home/.htpasswd» необходимо указать собственный путь до файла с логином и паролем от корня сервера.
Вредоносные скрипты
Команда для защиты от хакерских атак:
Защита от DOS-атак
Эффективный способ — выставить допустимые пределы веса загружаемых на ресурс файлов:
LimitRequestBody 10240000
Сжатие компонентов
Для этого лучше использовать модуль Gzip и задать команду:
Что должно быть в файле?
Многих вебмастеров интересует, что должно быть в htaccess? Стандартное содержание напрямую зависит от используемой CMS. Например, для сайтов на WordPress файл будет содержать следующие данные:
Поделиться
Твинтнуть
Поделиться
Запинить
Отправить
Facebook
YouTube
Telegram
html — расположение файла .htaccess
Задавать вопрос
спросил
Изменено 5 лет, 11 месяцев назад
Просмотрено 77 тысяч раз
/var/www/html/My_project_folder — это путь к моему проекту. Я не нашел файл .htaccess. Я хочу вставить отредактированный файл .htaccess. но я не уверен, в какое место мне нужно поместить?
Код моего файла htaccess — 9индекс\.php$ — [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
Правило перезаписи. /index.php [Л]
Этот код я добавил в файл . htaccess для ускорения работы моего сайта. Пожалуйста, помогите мне найти файл .htaccess. Заранее спасибо!
- html
- .htaccess
- web
- pagespeed
Обычно этот файл находится в корневом каталоге вашего сайта (где находится ваш файл index.php
). Если его нет, вы можете создать новый файл. Но будьте осторожны, чтобы не создать что-то вроде «.htaccess.txt», если вы делаете это с помощью блокнота (который обычно добавляет .txt ко всем файлам).
Вам необходимо вставить файл .htaccess в корень вашего проекта. Возможно, что ваш .htaccess скрыт… попробуйте заглянуть в папку с помощью терминала вместо DM и если его там нет, попробуйте создать новый файл из терминала с помощью команды.
nano .htaccess (для пользователей Linux)
редактировать .htaccess (для пользователей Windows)
Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google Зарегистрироваться через Facebook Зарегистрируйтесь, используя электронную почту и парольОпубликовать как гость
Электронная почтаТребуется, но не отображается
Опубликовать как гость
Электронная почтаТребуется, но не отображается
Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.
Что такое файлы .htaccess?
Участник OSTraining недавно запутался в файлах .htaccess.
Участник интересуется, для чего нужны файлы .htaccess и почему некоторые сайты используют много файлов .htaccess.
Итак, вот наше руководство для начинающих по файлам .htaccess и их использованию.
Знакомство с файлами .htaccess
htaccess означает «доступ к гипертексту».
Эти файлы содержат параметры конфигурации для всего каталога. Итак, хотя я бы не рекомендовал этого делать, вы можете иметь файл .htaccess для каждого каталога на вашем сервере. Файл htaccess действует как подмножество файлов глобальной конфигурации сервера и позволяет переопределять правила для определенных каталогов.
Эти файлы относятся к серверам Apache, поэтому они используются на большинстве серверов по всему миру.
Префикс точки помечает файл как скрытый для сред на основе Unix. Любой файл, начинающийся с префикса, обычно является системным файлом, например . bash.
Как обычно используются файлы .htaccess?
Файлы htaccess эволюционировали, чтобы иметь множество применений для веб-сайтов. Joomla, Drupal, WordPress и все основные CMS в значительной степени зависят от файлов htaccess.
Часто файлы htaccess добавляют дополнительный уровень защиты к папке, в которой они находятся, а также к подпапкам внутри. Однако у них есть много других применений:
- Авторизация
- Аутентификация
- перезапись URL
- Блокировка спам-ботов
- SSL
- Список каталогов
- Индивидуальные ответы на ошибки
- Mime-тип
- Управление кэшем
- … и многое другое.
Преимущества файлов .htaccess
- Мгновенное изменение, файлы активируются по запросу, поэтому они мгновенно начинают работать, как только они активируются. Глобальная конфигурация сервера запускается только каждый раз, когда сервер сбрасывается/перезагружается.
- Полномочия непривилегированного пользователя, используя файлы .
htaccess, пользователи с минимальными полномочиями над сервером могут влиять на изменение разделов, к которым у них есть доступ, это может позволить изменять сервер по желанию пользователей без необходимости глобального доступа к серверу.
Недостатки .htaccess
- Производительность становится проблемой для каждого HTTP-запроса файлы активируются, если вы начинаете испытывать потерю производительности из-за повторных запросов доступа, вам следует учитывать производительность файлов .htaccess и то, что можно перенести на httpd .conf или полностью заменить на nginx.
- Безопасность, позволяя пользователям изменять настройки сервера, это может привести к проблемам с безопасностью, поэтому рекомендуется убедиться, что файлы имеют правильные права доступа, внешний доступ к .htaccess позволяет обновлять файлы, что займет мгновенный эффект, что может привести к компрометации веб-сервера.
Пример файла .htaccess на веб-сайте
Давайте посмотрим, как Drupal использует файлы .