質問

.htaccessと.htpasswdファイルを作成し、保護したいフォルダーに保存しました。そのフォルダーに移動したときに、ユーザー名とpassowrd(.htpasswdファイルに保存)を求められ、ユーザー名を入力した後、パスワードでは、500の内部サーバーエラーが発生しました。 LocalHost(Windows)の両方でファイルを使用し、Webサーバー(Linux Iが推測している)と同じ結果と同じ結果が得られました。

これは私の.htaccessファイルです:

<Files ~ "^\.(htaccess|htpasswd)$">
deny from all
</Files>
AuthUserFile /.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user 
order deny,allow
役に立ちましたか?

解決

私はあなたのことを疑います .htpasswd ファイルは、実際にはサーバーのファイルシステムのまさにルートにあります /bin, /usr, /home, 、およびその他(ファイルシステムの一部ではなく、Webブラウザーに提供されました)。

Apacheのドキュメントによると(1, 2), AuthUserFile ファイルパスが期待されます(あたかもサーバールートにいるかのように、通常 /usr/apache 同様に、Unixシェルからファイルを見つけようとしています)。絶対的または相対的なURLにすることはできません。あなたを修正します .htpasswd それに応じてファイルパス。

可能であれば、置くべきではないことに注意してください .htpasswd 内部のファイル public_html また htdocs フォルダー。構成エラーは、保護するファイルへの不正アクセスを許可するだけでなく、承認されたユーザー名とハッシュパスワードも可能にするためです。

他のヒント

絶対ホスティングパスを使用してください。

/home/content/14/5267714/html/.htpasswd
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top