Защитить сайт или определённую папку паролем с помощью .htaccess
Иногда возникают ситуации, когда требуется закрыть паролем доступ ко всему сайту или некоторым его папкам. Это легко сделать с помощью файлов .htaccess и .htpasswd (если настройки хостинга позволяют это делать).
В директории, которую мы хотим закрыть паролем (или в корневом каталоге сайта, если мы закрываем весь сайт), создадим файл .htaccess, в который запишем такие строки:
AuthName "произвольный_текст" AuthType Basic Require valid-user AuthUserFile "полный_путь_к_файлу_.htpasswd"
В строке AuthName вместо "произвольный_текст" обычно находится сообщение, которое указывает к чему осуществляется доступ, например "Система управления" или что-то подобное. Это сообщение будет отображаться в окне для ввода логина и пароля.
В строке AuthUserFile указываем полный путь к файлу .htpasswd, в котором находятся зашифрованные пароли. Очень часто, из соображений безопасности, на хостинге создается специальная директория для таких файлов, доступ к которой из интернета закрыт. Путь к файлу .htpasswd может выглядеть так: /home/my_site/.htpasswds/.htpasswd или в случае с операционной системой Windows так: c:/my_site/.htpasswd.
Сам файл .htpasswd генерируется с помощью утилиты htpasswd из комплекта Apache. Обычно, для этого нужно написать в командной строке следующее:
htpasswd -bc .htpasswd имя_пользователя пароль_пользователя
После этого нужно переместить полученный файл в директорию, указанную в AuthUserFile. О других функциях утилиты htpasswd можно узнать запустив ее из командной строки без параметров.
После выполнения описанных действий, при попытке обращения к защищенному сайту или каталогу, появится окно с просьбой ввести логин и пароль для входа на сайт.
almix
Разработчик Loco, автор статей по веб-разработке на Yii, CodeIgniter, MODx и прочих инструментах. Создатель Team Sense.
Вы можете почитать все статьи от almix'а.
- 1 Git для начинающих. (12.04.2013)
- 0 Лишь этот голос. Наталья Ром – Хочу говорить крaсиво! Техники речи. Техники общения (23.07.2014)
- 0 Путешественнику на заметку: Необходимые выражения на разных языках (28.11.2014)
- 0 Synology и VPN подключение удалённого компьютера. (31.05.2014)
- 0 Браузер не открывает страницы, а скайп и icq работают. Что делать? (12.05.2014)
- 0 Если на флешке пропали файлы (07.02.2014)
- 0 Ошибка при выполнении команды grunt после обновления OS X 10.9: Bus error: 10. Перестал работать grunt (07.11.2013)
- 0 Регулярные выражения в PHP (12.04.2014)
- 0 Как сделать потоковое видео на сайте. (24.10.2013)
- 0 Защитить сайт или определённую папку паролем с помощью .htaccess (27.05.2013) ← вы тут
- 0 Удаление папок subversion (.svn) из проекта в Windows (22.03.2013)
- 0 Гугл закрывает Google Reader (17.03.2013)
- 0 Сброс пароля для root в mysql установленном через Denwer в Windows (14.03.2013)
- 0 Создание нового репозитория на Github, перенос локального репозитория и обновление удалённого через командную строку (30.03.2013)
- 0 Git "command not found" после обновления OS X до Mountain Lion (20.03.2013)
- 0 Использование веток (branches) в Github при разработке и доработке кода. Как делать pull request автору репозитория. (20.03.2013)
- 0 Полезные команды для вебразработчика (20.11.2017)
- 0 Склейка URL c www, 301 редирект с WWW и без WWW. Один ли сайт? Унифицированный Root (04.09.2013)
- Как включить SSL и сделать редирект на HTTPS. На примере Opencart 2 (03.12.2017)
- Для владельцев барбершопов (01.11.2017)
- Превышение лимита CPU - снижаем нагрузку на хостинг (29.07.2016)
- Взаимодействие клиента и заказчика. Правильная организация взаимной работы (20.08.2015)
- Волков Дмитрий Николаевич (10 сентября 1924 – 17 июля 1991) деревня Чарсуль Клепиковский район Рязанской области (26.04.2015)
- Позвонили, сказали пришёл срок поверки ваших счётчиков. Надо ли мне их пускать? (22.04.2015)
- Несколько функций в body onload (08.03.2013)