我正在尝试使用。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
我使用SHA1(1234),因为我认为这是SHA1Sum类型的正确加密函数。
表中更新了40个字符的加密密码。现在,当转到相应的页面时,它会弹出对话框,输入用户名和密码。
由于某些原因,即使我输入了正确的密码,它也不让我进去。这背后的原因是什么呢?我做错什么了吗?请给出你的想法
我想你可能已经找到了一个过时的Apache 1的指南。mod_auth_mysql
. x版本。试着从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>