====== Настройки доступа ======
----
===== Запретить доступ к файлам и каталогам =====
* Для всех пользователей ко всем файлам и каталогам:
Order allow,deny
Deny from all
* Для всех пользователей к файлам с определенным расширением:
Order allow,deny
Deny from all
* Для всех пользователей к определенному файлу:
order allow,deny
deny from all
* Для определенных IP пользователей:
Order Allow,Deny
Allow from All
Deny from xxx.xxx.xxx.xxx
* Для браузеров / ботов:
RewriteEngine On
RewriteBase /
SetEnvIfNoCase Referer "^$" bad_user
SetEnvIfNoCase User-Agent "^badbot1" bad_user
SetEnvIfNoCase User-Agent "^badbot2" bad_user
SetEnvIfNoCase User-Agent "^badbot3" bad_user
Deny from env=bad_user
Замените badbot1, badbot1 и т. д. именами ботов из вашего журнала. Это закроет посторонним программам доступ к вашему сайту.
* Для попыток перейти с определенных доменов:
RewriteEngine on
RewriteCond %{HTTP_REFERER} bannedurl1.com [NC,OR]
RewriteCond %{HTTP_REFERER} bannedurl2.com [NC,OR]
RewriteRule .* - [F]
Вам необходимо заменить bannedurl1.com и bannedurl2.com доменами, которые вы хотите внести в черный список. Вы можете использовать флаг [NC], указывающий, что введенное доменное имя нечувствительно к регистру. Флаг [F] указывает на тип действия, в данном случае — отображение ошибки 403 Forbidden. Если вы хотите запретить несколько сайтов, используйте флаги [NC, OR] для каждого домена, если же вы хотите запретить использование одного домена — используйте только флаг [NC].
\\
----
\\
===== Разрешить доступ к каталогу и файлам =====
* Для определенных IP:
Order Deny,Allow
Deny from All
Allow from xxx.xxx.xxx.xxx
\\
----
\\
===== Запрет на просмотр директорий =====
Options All -Indexes
//Если же по какой-то причине вы хотите разрешить просмотр всех директорий, используйте код://
Options All +Indexes
\\
----
\\
===== Доступ по паролю =====
* Для каталога (разместить .htaccess внутри каталога):
AuthName "18?"
AuthType Basic
AuthUserFile /var/www/user/www/site/.htpasswd
Require valid-user
\\
* Для файла:
AuthType Basic
AuthName "18?"
AuthUserFile /var/www/user/www/site/.htpasswd
Require valid-user
\\
* Для группы файлов по регулярному выражению:
AuthName "18?"
AuthType Basic
AuthUserFile /var/www/user/www/site/.htpasswd
Require valid-user
где
**AuthUserFile** - путь к файлу с паролями;
**AuthName** - пояснение, обычно указывается, к чему осуществляется доступ;
**AuthType** - тип авторизации; практически всегда используется **Basic** (кроме него доступен тип **Digest**
**Require** - набор условий, по которым определяется, кто из перечисленных в .htpasswd пользователей имеет доступ к данному каталогу сайта. **valid-user** подразумевает, что доступ может получить любой пользователь после ввода пароля; вместо valid-user можно через пробел перечислить имена пользователей, которым предоставляется доступ.
\\
----
\\