У меня есть веб-сайт, который я размещаю в Apache (в Windows), и я хотел бы защитить его, чтобы любому входящему нужно было вводить пароль. Это не должно быть крепостью безопасности, я знаю, что это отстой, но это лучше, чем ничего, и я не хочу использовать какие-либо альтернативы, которые сделают его более безопасным (они действительно того не стоят для этого).
Я бы хотел, чтобы в типичном диалоговом окне HTTP-аутентификации появлялось всплывающее окно с запросом пароля у посетителя. У всех будет одинаковый пароль. На самом деле, если бы я мог оставить имя пользователя пустым, это было бы идеально. В противном случае у всех будет одно и то же имя пользователя.
Не могли бы вы сообщить мне, как я могу это сделать? Все найденные мной руководства предназначены для более сложных случаев использования, когда использовались фактические пользователи / пароли машины.
Можно ли просто установить это на жестко запрограммированный пароль в файле? Или мне нужно создать пользователя Windows?
Google для:
Базовая аутентификация Apache htpasswd
Шаги:
Создайте файл htpasswd. Этот файл можно называть как угодно, и он должен быть вне вашего DocumentRoot. Использовать htpasswd полезность для этого
touch /etc/http.passwd
htpasswd /etc/http.passwd jsilverman
New password:
Re-type new password:
Adding password for user jsilverman
Добавьте в конфигурацию Apache следующее: (а) ваш основной apache2.conf (более централизованный, возможно, более управляемый) или (б) файл .htaccess в защищенном каталоге (проще, прямее, перезапуск apache не требуется)
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /etc/http.passwd
Require user jsilverman
Перезагрузите Apache, если вы это сделали (а), в противном случае все готово.
Если это произойдет: htpasswd: команда не найдена
Возможно, вам потребуется установить apache2-utils или аналогичный пакет.
Однако я не думаю, что вы очень усердно искали. В Интернете нет ничего, кроме десятков тысяч примеров этого процесса, относящихся к середине 90-х годов. Но я болтаю, так что вы получили реальный ответ вместо умного RTFM. Но на самом деле RTFM - веб-сервер Apache - одна из наиболее хорошо документированных частей программного обеспечения с открытым исходным кодом.
Обновление: Вау, ты действительно не очень хорошо искал. Я просто выполнил поиск в Google «Мне повезло» по запросу «веб-сайт, защищенный паролем» и получил в основном такой ответ.
Да, вы можете сделать это через .htaccess
файлы или ваш httpd.conf
.
Вот генератор для создания файла имени пользователя и пароля: http://tools.dynamicdrive.com/password/
И вот документация Apache по этому поводу: http://httpd.apache.org/docs/2.0/howto/auth.html