Как предотвратить доступ к каталогу и показать запрещенную ошибку в php
-
Я новичок в .htaccess, я хочу знать, как использовать .htacces для предотвращения прямого доступа через URL-адрес моей папки, например. localhost/mycart/images/OR localhost/mycart/css должен показывать запрещенное сообщение.
-
В настоящее время я поставил index.php в каждую папку своего сайта и эхо сообщения, это хороший способ сделать это.
-
когда я обращаюсь к своему сайту, например, www.mycart/index.php/css или www.mycart/index.php/images, он показывает веб-сайт без изображений и css, почему и как его исправить?
/li >
Ответы
Ответ 1
Я использовал
# disable directory browsing
Options -Indexes
И наоборот, чтобы включить просмотр каталогов, используйте следующую директиву:
# enable directory browsing
Options +Indexes
Аналогично, это правило запретит серверу перечислять содержимое каталога:
# prevent folder listing
IndexIgnore *
И, наконец, директива IndexIgnore может использоваться для предотвращения отображения выбранных типов файлов:
# prevent display of select file types
IndexIgnore *.wmv *.mp4 *.avi *.etc
Предоставлено из: Предотвращение несанкционированного просмотра каталогов из Глупые трюки HTACCESS.
Он также содержит множество других полезных команд, которые будут использоваться в .htaccess
для повышения безопасности и повышения производительности.
Ответ 2
Вы можете просто добавить следующее к своему .htaccess
# Don't listing directory
Options -Indexes
ErrorDocument 403 http://www.your-website-home-page.com/
# Follow symbolic links
Options +FollowSymLinks
# Default handler
DirectoryIndex index.php
При загрузке файла будет загружен только файл index.php. Если файл index.php не найден, произойдет ошибка 403 (доступ ограничен), и он отправит пользователя на домашнюю страницу
Ответ 3
Если вы хотите запретить доступ ко всем файлам:
deny from all
Если вы хотите отключить список каталогов:
IndexIgnore *