0

.htaccess ファイルを使用してフォルダー レベルでユーザーを認証しようとしています。

そして、私の .htaccess ファイルには、パスワード暗号化のための次の行があります。基本的に、暗号化タイプとして SHA1Sum を使用します。

AuthMySQL_Password_Field passwd
AuthMySQL_Empty_Passwords off
AuthMySQL_Encryption_Types SHA1Sum

今。次のクエリを使用して、パスワードの一部を更新しました。

update `auth_users` set passwd=SHA1(1234) WHERE user_id = 1

SHA1Sum タイプの正しい暗号化関数だと思うので、SHA1(1234) を使用します。

テーブル内の 40 文字の暗号化パスワードが更新されます。それぞれのページに移動すると、ユーザー名とパスワードを入力するダイアログボックスがポップアップ表示されます。

なんらかの理由で、正しいパスワードを渡しても入れません。この背後にある理由は何でしょうか。私は何か間違ったことをしていますか?あなたの考えを教えてください

4

1 に答える 1

0

古い Apache 1.x バージョンのmod_auth_mysql. modauthmysqlの連中によるこのガイドをチェックしてみてください

htaccess オプションは次のようになります (すべてのオプションが必要というわけではありません。これは、オプションがどのように見えるかを説明するためのものです。アンダースコアがないことに注意してください)。

AuthMySQLEnable On
AuthMySQLHost localhost
AuthMySQLPort <default port in MySQL>
AuthMySQLSocket <default socket in MySQL>
AuthMySQLUser <no default -- NULL>
AuthMySQLPassword <no default -- NULL>
AuthMySQLDB test
AuthMySQLUserTable user_info
AuthMySQLUserCondition <no default>
AuthMySQLNameField user_name
AuthMySQLPasswordField user_passwd
AuthMySQLNoPasswd Off
AuthMySQLPwEncryption sha1
AuthMySQLSaltField <>
AuthMySQLGroupTable <defaults to value of AuthMySQLUserTable>
AuthMySQLGroupCondition <no default>
AuthMySQLGroupField <no default>
AuthMySQLKeepAlive Off
AuthMySQLAuthoritative On
AuthMySQLCharacterSet <no default> 
于 2013-01-18T15:34:19.110 に答える