Добавление пользователя в .htpasswd


92

Я использую .htpasswdдля защиты паролем определенного каталога на моем сервере. Однако я заметил, что каждый раз, когда я это делаю, sudo htpasswd -c /etc/apache2/.htpasswd newuserмое текущее содержимое .htpasswdбудет перезаписано. В каждом каталоге моего сайта есть свой пользователь на .htpasswd.

Как я могу не перезаписать, а вместо этого добавить нового пользователя на свой .htpasswd?

Ответы:


149

То же самое, только опустите эту -cопцию. Документация Apache по этому поводу здесь .

htpasswd /etc/apache2/.htpasswd newuser

Кроме того, htpasswdобычно не запускается с правами root. Обычно он принадлежит либо веб-серверу, либо владельцу обслуживаемых файлов. Если вы используете root для его редактирования вместо того, чтобы входить в систему как один из этих пользователей, это приемлемо (я полагаю), но вы должны быть осторожны, чтобы убедиться, что вы случайно не создаете файл как root (и, следовательно, имейте root, и никто другой не сможет его редактировать).


О Боже! Никогда не думал, что этот переключатель - ответ, извините за мою невиновность.
Fishcracker

Однако он не позволяет мне изменять существующий, .htpasswdон настаивает на использовании -cпереключателя.
fishcracker

@fishcracker Что за ошибка? htpasswd /path/to/file usernameсовершенно корректно (в любом случае синтаксически) и даже первый пример в документации Apache.
Corbin

Виноват. Я пытаюсь сделать это htpasswd -c /etc/apache2/.htpasswd newuserна своем сервере CentOS! Извините, не заметил, что я не в том окне. Приму ваш ответ через 5 мин. Благодарность!
Fishcracker

19

FWIW htpasswd -n usernameвыведет результат прямо на стандартный вывод и не будет касаться файлов вообще.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.