繁体   English   中英

如何在.htpasswd文件中使用md5密码?

[英]How can I use md5 passwords in .htpasswd file?

您好我正在尝试设置.htaccess.htpasswd文件,以查看用户是否可以访问特定目录。 当新用户注册时,他们的密码使用PHP md5()函数加密,然后使用其他登录信息存储在数据库中。 我想动态地将一些加密密码添加到我的.htpasswd文件中,以便它们可以进入子成员部分。 我遇到了麻烦,因为.htpasswd文件可以使用crypt()函数加密的密码,但我不知道如何使用它们的md5加密密码。

文件说:

htpasswd使用为Apache修改的MD5版本或系统的crypt()例程来加密密码。 由htpasswd管理的文件可能包含两种类型的密码; 某些用户记录可能具有MD5加密密码,而同一文件中的其他用户记录可能具有使用crypt()加密的密码。

我认为你可以使用-m参数htpasswd在htpasswd文件中明确指定apache使用md5s作为密码

如果您不想或不能使用htpasswd工具,可以从PHP创建基于crypt()的密码:

$clearTextPassword = 'some password';
$password = crypt($clearTextPassword, base64_encode($clearTextPassword));

“我认为你可以使用-m参数htpasswd在htpasswd文件中明确指定apache使用md5s作为密码”

我刚刚在Ubuntu 12.04和更新版本中发现了相反的情况,它默认为md5,你必须使用-d标志才能使用Crypt。 在其他地方也可能是这种情况,我似乎找不到htpasswd的版本号。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM