.что такое htaccess и как его использовать? Печать

  • 2

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

Как правило, .htaccess находится в основном каталоге хостинга сайта.

Если в основном каталоге сайта нет файла, вы можете создать его самостоятельно.

 

.записи, включенные в htaccess, называются директивами. Директивы влияют на все файлы в текущем каталоге и на все его подкаталоги (если эти директивы являются основными .если он не переопределен директивами в файлах htaccess).

Ниже обсуждаются варианты написания некоторых директив.

 

1. Простая директива перенаправления (перенаправление)

Допустим, вам нужно перенаправить пользователя сайта на другой сайт (URL), для этого .вы должны добавить следующую строку в файл htaccess:

Перенаправление 301 / http://www.example.com

здесь http://www.example.com -URL-адрес назначения перенаправления

 

2. Расширенные директивы перенаправления (mod_rewrite).

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

Вот несколько примеров использования этой директивы:

 

-если ваш сайт поддерживает простое соединение (HTTP) и зашифрованное (https), часто необходимо перенаправить весь http-трафик на https без ведома пользователя.

Для этого мы устанавливаем следующее правило:

 

-перенаправление на https без www

RewriteEngine включен

 

RewriteCond % {HTTPS} !=десять

RewriteCond %{HTTP_HOST} ^www\.(.+ ) $ [NC]

RewriteRule ^ https://%1%{REQUEST_URI} [R=301, L]

 

RewriteCond %{SERVER_PORT} !^443

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^ https://yourdomain.by%{REQUEST_URI} [R=301, L]

 

RewriteCond %{HTTP:X-SSL-Emu} !десять

RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

 

-переадресация с www на https

RewriteEngine включен

 

# перенаправление на www

RewriteCond % {HTP_HOST} !^www\.

RewriteRule ^(.* ) $ https://www.%{HTTP_HOST}/$1 [R=301,L]

 

RewriteCond %{SERVER_PORT} !^443

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^ https://www.yourdomain.com%{REQUEST_URI} [R=301, L]

 

-закрываем доступ к сайту в рабочее время;

RewriteEngine включен

RewriteCond %{TIME_HOUR}%{TIME_MIN} > 900

RewriteCond %{TIME_HOUR}%{TIME_MIN} < 1800

Rewrite Rule.* - [F]

 

- сайт из одного домена в другой domain.com из domain2.com был перемещен в.

RewriteEngine включен

RewriteCond % {HTP_HOST} ^www\.domain\.com$ [R=301,1]

RewriteRule ^(.* ) $ http://www.domain2.com/

 

3. Устранение ошибок

Иногда во время работы сервера возникают ошибки, которые правильнее называть не сбоями в работе сервера, а стандартными кодами возврата. Простыми словами: сервер отвечает пользователю невозвратным запросом с кодом ответа, зная его значение, можно понять, что вызвало ошибку при запросе данных с сервера.

Коды, начинающиеся с 4xx и 5xx, классифицируются как ошибки.

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

 

Пример переопределения страниц ошибок приведен ниже:

 

- статус входа на страницу, где посетитель недоступен;

ErrorDocument 404 http://domain.com/error/404.htm

 

- если доступ к странице ограничен;

ErrorDocument 403 http://domain.com/error/403.htm

 

- исправлена синтаксическая ошибка в запросе посетителя;

ErrorDocument 400 http://domain.com/error/400.htm

 

- любая внутренняя ошибка сервера, не включенная в диапазон ошибок другого класса.

ErrorDocument 500 http://domain.com/error/500.htm

 

4. Кодирование

Иногда браузер пользователя не может правильно определить тип кодировки выходного документа. Кодировка, используемая для решения этой проблемы, указана в настройках веб-сервера apache и в заголовке передаваемого документа. Кроме того, для правильного распознавания эти кодировки должны совпадать. Наши серверы по умолчанию используют кодировку UTF-8.

Ниже .есть несколько вариантов настроек htaccess:

 

- установка стандартной кодировки;

AddDefaultCharset utf-8

или

AddDefaultCharset WINDOWS-1251

 

- состояние, при котором все файлы, загруженные на сервер, автоматически перекодируются в указанный формат.

Charsetsourceency UTF-8

 

5. Установка максимального размера загружаемых файлов в PHP.

Максимальный размер загружаемых файлов .показано в htaccess с использованием двух директив:

php_value upload_max_filessize 20M

php_v

alue post_max_size 20M

Установите желаемый размер границы вместо 20 м. Значение этих параметров не должно превышать 50м. Обратите внимание, что символ " M " (производная от M) отображается вместе со значением.

 

6. Ограничение доступа к сайту по IP адресам.

Чаще всего это происходит, когда необходимо запретить доступ к веб-сайту для одного или нескольких IP-адресов или запретить доступ ко всем IP-адресам, кроме определенного.

Примеры некоторых параметров конфигурации:

 

- отказ в доступе к определенному IP-адресу;

Разрешение заказа, отказ

Пусть все

Отказ от 192.168.1.1.

здесь 192.168.1.1. - IP-адрес, к которому запрещен доступ (в конце должна быть точка).

 

-запретить доступ к сайту всем, кроме определенного IP-адреса;

Отказ от заказа, разрешение

Откажитесь от всех

Разрешить от 192.168.1.1.

где 192.168.1.1-IP-адрес, по которому разрешен доступ.

 

- любым хозяевам .txt и .запрет доступа к файлам с расширением DAT (например, они могут хранить внутреннюю информацию сценария).

<url> FilesMatch"\.(txt|dat)$">

Отказ от заказа, разрешение

Откажитесь от всех

 

 

.более подробную информацию о возможностях работы с файлом htaccess можно найти на официальном сайте Apache.


Помог ли вам данный ответ?

« Назад