2016-11-03 5 views
2

Я пытаюсь ограничить доступ к каталогам в моем корне, чтобы другие не могли получить доступ к файлам в этих каталогах непосредственно в браузере. Проблема, с которой я столкнулся, теперь является страницами в корне, например index.php запрашивает пароль, а .htaccess находится в корне каталога, а не в корне домена. Это предотвращает доступ к файлам индексов из файлов include из этих каталогов..htaccess запретить доступ к каталогу

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

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

AuthType Basic 
AuthName "Administrator" 
AuthUserFile /home2/mesquiu0/.htpasswds./htpasswd 
Require valid-user 

Order Deny,Allow 
Deny From All 
Allow From 127.0.0.1 

ответ

1

Все, что вам нужно сделать, это добавить следующую строку с дополнительной пустой строкой, чтобы отключить индексирование директорий:

Options -Indexes 

Обратитесь к документации для получения дополнительной информации: http://httpd.apache.org/docs/current/mod/core.html#options

+0

дам этому выстрел тоже. Я попробовал это ранее, очистил кешированный и перезапущенный браузер, и я все еще мог обращаться к файлам в каталоге. Возможно, я сделал + Индексы, поэтому может быть и почему. Спасибо за предложение. – Texan78

+0

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

+0

Обновление, это работает для ограничения доступа к каталогу, но если некоторые представления являются источником файла и, например, нажимают на ссылку, таблицу стилей. Это позволит им просматривать файл в этом каталоге. Если я просто попытаюсь просмотреть структуру каталогов, она блокирует их. Мне нужно, чтобы они не могли получить доступ к файлам в каталоге, сохраняя при этом файлы для включения в определенные файлы, которые в них нуждаются. – Texan78

1

Просто разрешить сценарии что соответствует php, aspx и т. д.

apache 2.2

AuthType Basic 
AuthName "Administrator" 
AuthUserFile /home2/mesquiu0/.htpasswds./htpasswd 
Require valid-user 

#Forbid access to any files except from localhost, because of Order Deny,Allow, Allow gets applied later. 
Order Deny,Allow 
Deny from all 
Allow from 127.0.0.1 

#Allow access to files matching index.php 
<Files index.php> 
    Order Allow,Deny 
    Allow from all 
</Files> 

В Apache 2.4 правила изменились, и правильный синтаксис - использовать Require all denied вместо Deny from all.

Это для апача 2.4

AuthType Basic 
AuthName "Administrator" 
AuthUserFile /home2/mesquiu0/.htpasswds./htpasswd 
Require valid-user 

Require host 127.0.0.1 

#Allow access to files matching index.php 
<Files index.php> 
    Require all granted 
</Files> 
+0

Спасибо за предложение, я дам этот снимок. Мой веб-хостинг находится на Apache 2.2, который удивителен, поскольку они обычно довольно хороши в том, чтобы оставаться в курсе. Только один маленький вопрос.Мне нужно поместить это в корневой каталог или в каждый каталог, поскольку у меня есть это сейчас, и я предполагаю, что если у меня есть несколько расширений файлов, я просто добавляю | добавить новый? – Texan78

+0

Я попробовал это, положив его в каждый каталог, а также попробовал его в корне. Если я поместил его в каталог, он все равно не позволит индексу обращаться к файлам и запрашивает логин. Если я положил его в корень, он заблокировал весь сайт. Мне просто нужно заблокировать каталоги, но по-прежнему разрешить мне входить в эти каталоги, в то же время позволяя файлам корня обращаться к файлам в этих подкаталогах. – Texan78

+0

Пожалуйста, проверьте прямо сейчас! Если он все еще не работает, я попрошу вас обновить содержимое htaccess и структуру каталогов в вашем вопросе. –

1

В файле .htaccess поместите следующую строку

Запретить все

И это, если вы хотите поставить исключения.

позволяет из всех

+0

Это не сработает, так как оно также запрещает включение файлов. – Texan78

Смежные вопросы