.htpasswd
サーバー上の特定のディレクトリをパスワードで保護するために使用しています。ただし、これを行うたびにsudo htpasswd -c /etc/apache2/.htpasswd newuser
、現在の内容.htpasswd
が上書きされることに気づきました。私のサイトのすべてのディレクトリには、.htpasswdに独自のユーザーがいます。
代わりに新しいユーザーを追加しないで上書きするにはどうすればよい.htpasswd
ですか?
.htpasswd
サーバー上の特定のディレクトリをパスワードで保護するために使用しています。ただし、これを行うたびにsudo htpasswd -c /etc/apache2/.htpasswd newuser
、現在の内容.htpasswd
が上書きされることに気づきました。私のサイトのすべてのディレクトリには、.htpasswdに独自のユーザーがいます。
代わりに新しいユーザーを追加しないで上書きするにはどうすればよい.htpasswd
ですか?
回答:
まったく同じこと-c
です。オプションを省略してください。Apacheのドキュメントはこちら。
htpasswd /etc/apache2/.htpasswd newuser
また、htpasswd
通常はrootとして実行されません。通常は、ウェブサーバーか、提供されているファイルの所有者が所有しています。これらのユーザーの1人としてログインする代わりにrootを使用して編集する場合、それは許容できます(たぶん)。しかし、誤ってrootとしてファイルを作成しないように注意してください(したがって、 rootがそれを所有し、他の誰もそれを編集することはできません)。
.htpasswd
の使用を要求する既存のものを変更することはできません-c
。
htpasswd /path/to/file username
とにかく完全に有効で(構文的には)、Apache docsの最初の例ですら。
htpasswd -c /etc/apache2/.htpasswd newuser
CentOSサーバーで実行しようとしています!申し訳ありませんが、私が間違ったウィンドウにいることに気づきませんでした。5分後に回答を受け付けます。ありがとう!
FWIW htpasswd -n username
は結果を直接stdoutに出力し、ファイルにまったく触れないようにします。