Каталог расширений

Популярные теги

3gp       avi       fb2       jpg       mp3       pdf      

Htaccess как запретить просмотр файлов


Запрет просмотра содержимого директории | Денис Кузменов

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

Теория вопроса

Дело все в том, что в директивах Apache определен файл или список файлов, которые будут показаны по умолчанию.

Что это значит? Если посетитель заходит по адресу site.ru/about.php — имя файл указано явно. Если посетитель заходит по адресу site.ru/about/ — показан будет файл, указанный в параметрах Apache в качестве индексного. А вот такую картину мы получим если такого файла в папке нет:

пример листинга директории

Как же решить эту проблему? На самом деле все очень просто. Мне известны два способа:

  • запретить листинг, используя файл .htaccess;
  • запретить построение списка файла на уровне сервера.

Рассмотрим оба способа более подробно.

Запрет листинга каталогов через .htaccess

Достаточно добавить всего одну простую строчку:

# запрет выдачи листинга Options -Indexes

Данное условие действует на все вложенные/дочерние папки. Следовательно, добавление данного условия в корневой файл .htaccess запрещает листинг директорий для всего сайта. При необходимости всегда можно разрешить выдачу листинга для конкретно взятой директории, для этого достаточно разместить в ней все тот же .htaccess, в котором будет содержаться следующий текст:

# разрешение выдачи листинга Options Indexes

Как Вы уже могли заметить, разница между запретом и разрешением состоит только в символе -. Именно он обозначает, что индексирование папки запрещено.

С первым способом решения задачи все. Он идеален для тех случаев, когда нет доступа к конфигурации сервера, либо отсутствует желание/навыки в них лезть.

 Запрет листинга каталогов через директивы Apache

Фактически все те же самые манипуляции можно проделать в настройках самого веб-сервера.

Для этого достаточно открыть конфигурационный файл httpd.conf (или apache2.conf) и добавить в него всю ту же самую строку:  Options -Indexes. Например так:

<Directory /var/www> Options -Indexes </Directory>

Для верности — можно перезагрузить Apache. Небольшая шпаргалка, которая поможет в поисках системного файла.

Где расположен конфигурационный файл httpd.conf

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

Debian, Ubuntu

apache 1.3
/etc/apache/httpd.conf

apache 2.2
/etc/apache2/apache2.conf

FreeBSD

apache 1.3
/usr/local/etc/apache/httpd.conf

apache 2.2
/usr/local/etc/apache22/httpd.conf

Linux (CentOS, Fedora)

/etc/httpd/conf/httpd.conf

Gentoo

apache 2.0
/etc/apache2/httpd.conf

Заключение

В результате работы обоих способов, вместо листинга папок мы получим ошибку 403, которая сообщает нам о том, что доступ закрыт (access forbidden). Задача решена. Благодарю за внимание!

Запретить доступ к файлам сайта htaccess

Поддержипроект!!!

Как запретить доступ к файлам htaccess. htaccess - это отличный инструмент в умелых руках, не только для зарета доступа к файлам! Но раз мы рассматриваем закрытие файла от посторонних глаз с помощью htaccess, то так и будем делать!

Поскольку количество способов скрыть файл и вообще запретить много, то яне берусь рассказать о всех способах! И чтобы не запутаться в перипетиях запрещений доступа к файлам сделаем навигацию по странице!

Навигация по странице :
  1. Запретить доступ ко всем файлам -> deny from all
  2. Запретить доступ к файлам с определенным разрешением htaccess
  3. Как запретить доступ к одному файлу htaccess
  4. Как запретить доступ к одному файлу НЕ htaccess

    Как запретить доступ ко всем файлам -> deny from all

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

    deny from all

    Пример запрета на доступ ко всем файлам htaccess

    Естественно, что все файлы мы не будем закрывать, мы сделаем папку в которую поместим файл .htaccess с выше приведенной строкой и поместим туда файл, test.php
    Нажмите по ссылке,чтобы посмотреть, результат... test.php

    Запретить доступ к файлам с определенным разрешением htaccess

  2. Для того чтобы закрыть доступ в папке к любому файлу с любым разрешения, например txt или файл конфиг cfg

    Делаем такую запись:

    <Files ~ "\.(dat|cfg)$">  

    deny from all   

    </Files> 

    Пример - Как запретить доступ к файлам с определенным разрешением

    Одно дело, когда сухая теория без примеров, то очень часто не понятно, как это должно работать!

    Поэтому мы не поленились и сделали несколько примеров, для иллюстрации этих правил – запрета просмотра файлов!

    Возьмем для примера вот такой путь и положим в него файл users.dat

    Если вы прошли по ссылке. То увидели, что файл спокойно можно открыть и прочитать, что собственно там написано!

    Теперь создадим папку номер два с точно таким же файлом, но уже в эту папку положим файл htaccess – где и пропишем

    <Files ~ "\.(dat|cfg)$">  

    deny from all   

    </Files> 

    Попробуйте перейти по ссылке..

    Как запретить доступ к одному файлу htaccess

  3. К примеру у вас есть один файл users.txt и к нему нужно запретить доступ.

    Делаем такую запись:

    Пример - Как запретить доступ к одному файлу htaccess.

    Для того, чтобы продемонстрировать работу выше приведенной записи в htaccess для запрета лишь определенного файла -> сделаме отдельную паку, в которую поместим файл htaccess с выше приведенным правилом!

    1. Первый файл, к которому выше запретили доступ через htaccess users.dat:
    2. В эту же папку поместим файл с таким дже разрешением, но изменим название на users_1.dat, как видим, заперт на просмотр верхнего файла действует в этой паке, но никак не влияет на соседние файлы!

    Как запретить доступ к одному файлу НЕ htaccess

  4. Ну раз уж тема запрета на просмотр файлов, приведу еще один способ запретить просматривать страницы, только без htaccess. Сделали уже довольно много страниц посвященных админкам , и там, в том числе есть много примеров, тестовых страниц, вот таких, на которую вы не сможете посмотреть, потому, что данная страница закрыта через php.
ЕЩЁ И еще мы уже делали тему похожую - запрет на просмотр папок

Пример:

https://dwweb.ru/__a-data/__all_for_scripts/__examples/htaccess/otkryit_opredelennyiy_fayl/primer_4
Вас может еще заинтересовать список тем : #HTACCESS |

Последняя дата редактирования : 2020-11-04 18:55

//dwweb.ru/comments_1_5/include/img/hand_no_foto.png

no

no

Еще никто не прокомментировал! COMMENTS+   BBcode Теги:
доступ к файлу запрещендоступ запрещен просмотр файладоступ запрещен просмотр файла index php запрещенhtaccess запретить доступ к файламзапретить доступ к файлам сайтазапретить прямой доступ к файлу phpзапретить доступ к файлу через htaccessкак закрыть доступ к файлу на сайтеограничить доступ к файлам на сайте.htaccess запретить доступ к папкеhtaccess запретить доступ к urlзапрет на прямой переход к файлуhtaccess forbidden403 access

Полезные хаки и сниппеты для .htaccess / Хабр

Это перевод очень интересной лично для меня статьи, которым я хочу поделиться с уважаемым хабрасообществом. Некоторые из приведенных рецептов я уже встречал на Хабре, но разрозненно и далеко не все из нижеприведенного.

О предназначении файла .htaccess знает каждый веб-разработчик. На базовом уровне он позволяет управлять доступом к каталогам сайта. Но добавляя в него различные дополнительные фрагменты кода, с ним можно сделать и много других интересных вещей.

Если же вам нужны базовые сведения о предназначении данного файла, то вы можете получить из нашей статьи введение в .htaccess (перевод данной статьи не делал, так как там основы, их достаточно в русскоязычном сегменте Сети, но если будет проявлен интерес, то можно и ее перевести для полноты картины — прим. переводчика), в которой достаточно подробно раскрыты все аспекты его применения.

Итак, полезные примеры использования. htaccess:

1. Управление доступом к файлам и каталогам

Защита паролем — это одно, но иногда может понадобиться полностью блокировать доступ пользователей к определенному файлу или папке. Обычно это относится к системным папкам, таким, например, как includes, доступ к которым должны иметь приложения, но не пользователи.

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

deny from all 

Однако учитывайте, что доступ будет блокирован для всех пользователей, включая и вас. Открыть доступ для конкретного пользователя можно прописав его IP-адрес. Вот код, который для этого потребуется:
order deny,allow deny from all allow from xxx.xxx.xxx.xxx 

где xxx. xxx. xxx. xxx — это ваш IP. Для задания разрешенных диапазонов IP-адресов вы можете заменить три последние цифры. Например, написав вместо них «0/12», вы зададите диапазон IP-адресов одной сети, что избавит вас от необходимости вводить в список все разрешенные IP-адреса отдельно.

Если вы хотите заблокировать доступ к определенному файлу, включая сам. htaccess, используйте следующий фрагмент кода:

<Files .htaccess> order allow,deny deny from all </Files> 

Если вы хотите указать определенные IP-адреса которым надо запретить доступ, перечислите их при помощи allow from.

Если же вы хотите заблокировать доступ к файлам определенного типа, используйте этот код:

<FilesMatch ".(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$"> Order Allow,Deny Deny from all </FilesMatch> 

2. Запрет на просмотр директорий

Для предотвращения просмотра директорий сайта добавьте в .htaccess следующий код:
Options All -Indexes 

Если же по какой-то причине вы хотите разрешить просмотр всех директорий, используйте код:
Options All +Indexes 

3. Ускорение времени загрузки за счет сжатия файлов

Сжимать можно файлы любого типа. Например, для сжатия HTML-файлов добавьте код:
AddOutputFilterByType DEFLATE text/html 

Для сжатия текстовых файлов используйте:
AddOutputFilterByType DEFLATE text/plain 

Вы также можете сжать JavaScript или включить сжатие для других различных типов файлов командами:
AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/rss+xml 

Кроме того, вы можете сжать все ваши JavaScript, HTML и CSS файлы при помощи GZIP. Для этого используйте следующий код:
<IfModule mod_gzip.c> mod_gzip_on Yes mod_gzip_dechunk Yes mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$ mod_gzip_item_include handler ^cgi-script$ mod_gzip_item_include mime ^text\.* mod_gzip_item_include mime ^application/x-javascript.* mod_gzip_item_exclude mime ^image\.* mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* </IfModule> 

4. Защита сайта от вставки изображений с других ресурсов

Если вы хотите запретить добавление ссылок на изображения со сторонних ресурсов, добавьте в файл .htaccess код:
RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC] RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L] 

Не забудьте заменить yourdomain.com на имя вашего домена.
5. Блокировка посетителей, перешедших с определенного домена

Если вы не хотите видеть на своем сайте пользователей с конкретного домена, то вы можете запретить им доступ. Например, пользователей с нежелательных ресурсов (сайты для взрослых, хакерские сайты и т. д.) вы можете перенаправлять на страницу 403 Forbidden. Для этого необходимо включить mod_rewrite, хотя, как правило, он включен по умолчанию. Добавьте в .htaccess код:
<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{HTTP_REFERER} bannedurl1.com [NC,OR] RewriteCond %{HTTP_REFERER} bannedurl2.com [NC,OR] RewriteRule .* - [F] </ifModule> 

Вам необходимо заменить bannedurl1.com и bannedurl2.com доменами, которые вы хотите внести в черный список. Вы можете использовать флаг [NC], указывающий, что введенное доменное имя нечувствительно к регистру. Флаг [F] указывает на тип действия, в данном случае — отображение ошибки 403 Forbidden. Если вы хотите запретить несколько сайтов, используйте флаги [NC, OR] для каждого домена, если же вы хотите запретить использование одного домена — используйте только флаг [NC].
6. Блокирование запросов от определенных браузеров

Если в ваших файлах журналов появились записи о посещении особых браузеров (это могут быть имитирующие работу браузера боты или пауки), вы можете запретить им доступ на свой сайт, добавив несколько строк в. htaccess:
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 и т. д. именами ботов из вашего журнала. Это закроет посторонним программам доступ к вашему сайту.
7. Кэширование файлов

Кэширование файлов — еще один способ ускорить загрузку вашего сайта. Вот то, что вам нужно прописать в .htaccess:
<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$"> Header set Cache-Control "max-age=2592000" </FilesMatch> 

Вы можете добавить больше типов файлов (или удалить некоторые из них) в перечисленныq в данном примере список файлов. Вы также можете указать время сохранения файлов в кэше (в секундах) при помощи переменной max-age.
8. Отключение кэширования для разных типов файлов

Если вы не хотите кэшировать определенные типы файлов, можно не включать их в список. Однако иногда файлы могут сохраняться в кэше даже не будучи явно перечисленными в списке, в этом случае вы можете отключить кэширование для них индивидуально. Чаще всего отключать кэширование требуется для динамических файлов, таких как сценарии. Пример требуемого для этого кода:
 <FilesMatch ".(pl|php|cgi|spl|scgi|fcgi)$"> Header unset Cache-Control </FilesMatch> 

Просто укажите типы файлов, для которых нужно отключить кэширование.
9. Обход диалога загрузки

По умолчанию при попытке загрузить файл с веб-сервера отображается диалог, который спрашивает вас, хотите ли вы сохранить файл или открыть его. Этот диалог особенно раздражает при скачивании больших медиа- или PDF-файлов. Если файлы, которые вы загрузили на сервер, предназначены исключительно для скачивания, вы можете облегчить жизнь пользователей, установив загрузку действием по умолчанию. Добавьте в. htaccess следующее:
AddType application/octet-stream .pdf AddType application/octet-stream .zip AddType application/octet-stream .mp3 

10. Переименование файла .htaccess

Если вы по каким-то причинам хотите переименовать файл .htaccess, то вы можете это сделать. Теоретически, переименование файла .htaccess не должно вызывать проблем с приложениями, запущенными на вашем сервере, но если вы заметите появление ошибок выполнения сценариев после переименования файла, то просто переименуйте его обратно.
AccessFileName htac.cess 

Кроме того, необходимо обновить все записи, в которых упоминается файл .htaccess, иначе возникнет множество ошибок.
11. Замена стартовой страницы сайта

Если вы хотите установить главную страницу, отличную от стандартной (index.html, index.php, index.htm и т. д.), добавьте следующий код в файл .htaccess:
DirectoryIndex mypage.html 

Замените mypage.html на URL страницы, которую вы хотите использовать в качестве главной.
12. Перенаправление на защищенное соединение HTTPS

Если вы используете HTTPS и хотите перенаправить пользователей на защищенные страницы вашего сайта, добавьте в файл .htaccess следующие строки:
RewriteEngine On RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

13. Ограничение максимального размера загружаемых файлов в PHP, максимального размера передаваемых данных, максимального времени выполнения скриптов и т.п.

.htaccess позволяет устанавливать некоторые значения, непосредственно влияющие на работу PHP приложений. Например, если вы хотите установить в PHP ограничение на размер загружаемых файлов, чтобы не забивать хостинг большими файлами:
php_value upload_max_filesize 15M 

Вы можете установить любое значение, в примере размер файла ограничен 15M (MБ). Помимо этого вы можете ограничить максимальный размер передаваемых при загрузке в PHP данных:
php_value post_max_size 10M 

Вы можете заменить 10М на любое требуемое вам значение. Если вам не требуется постоянное выполнение скриптов, вы можете ограничить время их выполнения с помощью строки:
php_value max_execution_time 240 

240 — время выполнения (в секундах), после которого скрипт будет остановлен, вы можете изменить это значение на любое другое. Наконец, если вы хотите ограничить время анализа скриптом исходных данных, используйте следующий код:
php_value max_input_time 180 

Установите вместо 180 любое требуемое вам время (в секундах).
14. Скрытие типов файлов

Иногда нужно, чтобы пользователи не знали, какие типы файлов находятся на вашем сайте. Один из способов скрыть эту информацию — сделать так, чтобы все ваши файлы отображались как HTML или PHP файлы:
ForceType application/x-httpd-php ForceType application/x-httpd-php 

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

Источник

UPD (спасибо akuma) расширение РНР для скрытия формата файлов приведено как пример и использование этого трюка в реальном проекте может оказаться небезопасным

Как настроить запрет доступа к файлу, каталогу и сайту через htaccess

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

Кому нужен запрет доступа и как им пользоваться

Стоит учитывать, что файл htaccess позволяет не только делать запрет доступа сразу ко всему сайту, но и создавать белые и черные списки пользователей. То есть вы сможете, к примеру, закрыть доступ для некоторых IP. Точно так же вы сможете снять запрет только для выбранных вами IP, создав тем самым белый список пользователей. Но зачем вообще использовать эту функцию?

Порой обстоятельства так складываются, что к сайту нельзя никого подпускать. К примеру, когда на нем ведутся какие-то важные техработы. В этот момент вы можете заблокировать доступ для каждого пользователя, кроме своего IP. Тогда посетители не будут присутствовать на ресурсе, когда он в нестабильном состоянии. Кроме того, используя черный список пользователей, вы сможете запретить доступ к сайту для IP недоброжелательных посетителей, которые спамят, флудят, ругаются и плохо обзываются о вашем портале.

Таким образом, вы сможете закрыть свой сайт от нежеланных гостей, создав подобие бан-листа. И во всем этом вам поможет файл htaccess с его незаменимыми директивами.

Как запретить доступ к файлу, каталогу, сайту через htaccess

Для управления уровнем доступа к сайту, файлу или папке вам необходимо будет использовать директивы Deny и Allow. Первая директива нужна, чтобы запретить доступ, а вторая – чтобы разрешить. Во многом эти директивы зависят от того, куда вы поместите файл htaccess. Если он будет расположен в корневом каталоге, то запрет или разрешение будет действовать на весь сайт целиком. Если же вы загрузите htaccess в какую-то папку, то опции Deny и Allow будут действовать на каталог, в котором находится, а также на внутренние папки. Именно таким образом и блокируют доступ к определенным директориям и разделам сайта.

Синтаксис директив запрета и разрешения предельно прост. Начинать опцию следует со строки Order Deny, Allow. Она обозначает активацию функций Deny и Allow. А в следующих строках вы должны указать конкретно, какие условия доступа вы планируете установить. Так, чтобы закрыть доступ для всех, вам нужно прописать всего две строки:

Order Deny,Allow - открытие функции.
Deny from all - указание правила.

Нижняя строка говорит: “Запретить (deny) для (from) всех (all)”. Точно таким же образом вы можете вместо Deny прописать Allow для активации противоположной опции. Но поскольку эта опция активирована по умолчанию, нет смысла ее дополнительно указывать в htaccess. Allow from скорее используют для того, чтобы указывать исключения, то есть чтобы сформировать белый список пользователей.

Чтобы открыть доступ только для некоторых IP, вам нужно сначала закрыть сайт или каталог для всех остальных. Вот пример создания белого списка для двух адресов IP:

Order Deny,Allow
Deny from all
Allow from 136.68.81.3, 135.67.82.1 - IP писать через запятую.

По аналогии с написанной функцией вы сможете блокировать только определенные адреса IP. Только для этого вам нужно будет сначала прописать разрешение для всех через Allow from all, а потом указывать через Deny from IP-адреса, либо названия хостов, для которых доступ строго воспрещен.

Для ограничения прав на файл через закрытие доступа, вам нужно создать отдельный документ htaccess, и поместить его в директорию, где содержится файл. Директива запрета для файла выглядит примерно так же, как опция ограничения доступа для сайта или каталога. Разница только в том, что для ограничения файла вам понадобится специальный тег . В открывающем теге необходимо указать название объекта, доступ к которому следует ограничить. Вот пример запрета для всех пользователей к файлу passvd.txt:

<Files "passvd.txt"> - тег с именем файла
Order Deny,Allow - открытие опции
Deny from all - правило директивы
</Files> - закрытие тега

Теперь вам осталось поместить htaccess в каталог, где содержится файл passvd.txt, и никто не сможет добраться к нему через сайт. Как показывает практика, обычно доступ к файлу блокируют не полностью, а указывают исключения для доверенных IP-адресов. К примеру, вы сможете указать ограничение для всех, кроме своего IP, чтобы вы смогли потом скачать файл с паролями. Вот пример такого ограничения:

<Files "passvd.txt">
Order Deny,Allow
Deny from all
Allow from 144.66.55.2
</Files>

Если в каталоге содержится не один файл, который вам нужно защитить, а несколько, то вы можете прописать сразу много директив для каждого отдельного объекта. Но это неудобно. Кроме того, много опций в htaccess нагружают сервер, потому куда разумнее активировать другую блокировку – запрет доступа по типу файлов в каталоге, а не по их наименованию. Вам нужно будет использовать точно такую же конструкцию директив, только вместо имени файла необходимо через символ “|” указывать расширения, которые пользователи не смогут скачать с данной папки. Вот пример тег запрета для загрузки картинок определенного формата:

<Files "\.(jpg|jpe?g|ico)$">
Директивы
</Files>

Чтобы сделать запрет для других форматов, вам нужно будет лишь сменить названия расширений в скобках. Сделать это несложно, как и указать белый или черный список пользователей. Сама конструкция в кавычках всегда остается одинаковой.

Учтите, что многие пользователи используют не статический IP, а динамический, потому указывать один адрес в запрете глупо. Куда разумнее писать в запрет диапазон IP-адресов. Для этого найдите Whois-сервис и определите CIDR IP-адреса, а затем укажите его в запрете. Тогда даже при временной смене адреса, пользователь не сможет зайти на портал.

Запрет доступа к файлам определенных типов в htaccess

Вы здесь: Главная - Запрет доступа к файлам определенных типов в htaccess

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

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

// Список расширений файлов
<FilesMatch ".(htaccess|htpasswd|docx|pdf|xls|xlsx|log)$">
   Order Allow,Deny
   Deny from all
</FilesMatch>

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

  • Создано 28.05.2019 10:46:19
  • Михаил Русаков
Предыдущая статья Следующая статья

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:
    <a href="https://myrusakov.ru" target="_blank"><img src="https://myrusakov.ru/images/button.gif" alt="Как создать свой сайт" /></a>

    Она выглядит вот так:

  2. Текстовая ссылка:
    <a href="https://myrusakov.ru" target="_blank">Как создать свой сайт</a>

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):
    [URL="https://myrusakov.ru"]Как создать свой сайт[/URL]

Контроль доступа через .htaccess для apache2.4 - Раздел помощи

Файл .htaccess позволяет производить дополнительную конфигурацию веб-сервера Apache для:

  • переадресации на другой домен
  • контроля доступа к сайту
  • изменения значений директив PHP
  • отображения собственных страниц ошибок

Директивы для веб-сервера Apache2.4+ отличаются от Apache2.2. В примерах указаны директивы для обеих версий web-серверов.

Для контроля доступа к сайту можно использовать следующие директивы:

Важно: нельзя использовать директивы для веб-сервера Apache2.4+ и Apache2.2 одновременно. Это может привести к некорректной работе сайта.

Домены с кириллическими символами

При использовании кириллических доменных имён в файле .htaccess, их необходимо указывать в формате Punycode. Перекодировать их можно с помощью сервиса.

Отклонить все запросы

Apache 2.2

Apache 2.4

Разрешить все запросы

Apache 2.2

Apache 2.4

Запретить доступ на основе имени хоста

Apache 2.2

Apache 2.4

Использование директив <RequireAll> и Require all granted обязательны если используется более сложная конструкция.

Запретить доступ на основе IP-адреса

Для ограничения доступа к сайту с определённых IP-адресов в файл .htaccess требуется добавить:

Apache 2.2

Apache 2.4

Запретить доступ к определенному файлу

Настройка ограничения доступа к определённым файлам производится путем добавления в .htaccess директив:

Apache 2.2

Apache 2.4

где ПУТЬ_К_ФАЙЛУ - необходимо заменить на целевой файл, а IP — на IP-адрес, для которого будет запрещен доступ.

Разрешить доступ к определенному файлу с IP-адреса

Настройка ограничения доступа к определённым файлам производится путем добавления в .htaccess директив:

Apache 2.2

Apache 2.4

где ИМЯ_ФАЙЛА - необходимо заменить на целевой файл, а IP — на IP-адрес, для которого будет разрешен доступ.

Запретить доступ по User-Agent (блокировка ботов)

Apache 2.2

Apache 2.4

где BadBot - необходимо заменить на User_Agent, которым представляется бот. Узнать его можно из лога запросов.


Полный список и подробности того, какие директивы доступны для редактирования через файл .htaccess, предоставлены в официальной документации PHP и веб-сервера Apache2.4:

php - Как запретить прямой просмотр html файлов с помощью htaccess?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.Регулярное выражение

- Как предотвратить прямой доступ к файлу по URL-адресу?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
.

.htaccess - Как запретить доступ ко всем файлам, кроме ОДНОГО, с помощью htaccess

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд
.

apache - Как предотвратить загрузку любого файла с помощью htaccess

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
.

.htaccess - Как предотвратить загрузку изображения или файла с исполняемым кодом на php или с использованием htaccess

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
.Каталог

- Как предотвратить влияние перезаписи .htaccess на папки?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Набрать
.

Смотрите также