Hostwinds 教程
寻找结果为:
目录
为网站设置密码身份验证对于与授权用户共享内容至关重要。在 使用.htaccess密码保护文件或目录。但是,您可能会想知道这些凭据是如何验证的以及它们存储的位置,以及在.htpasswd文件中的答案,如下所述。
一个.htpasswd文件通常在使用HTTP身份验证的密码保护文件,文件夹或整个网站时使用,并在.htaccess文件中使用规则实施。用户凭据存储在单独的行上,每行包含一个用户名和密码,并由冒号分隔(:)。用户名存储在纯文本中,但密码以加密的哈希格式存储。该加密通常是MD5,尽管在Linux中,它可以基于crypt()函数。尽管可以将密码文件命名为您想要的任何内容,但这是 不 建议将Apache预先配置为默认情况下使用.htpasswd;和点文件(以"。"开头的文件)通常是隐藏的文件。
对于Linux,您可以使用htpasswd命令创建.htpasswd文件(通常只有在安装Web服务器之后才能使用)。
首先,您需要记住用户名。对于此示例,我选择了UserName Bob123。接下来,您需要通过SSH登录您的服务器。如果您不确定如何通过SSH访问服务器,请查看以下文章: 通过SSH连接到服务器。最后,您将执行以下命令。请注意,如果您将其作为非root用户执行,则需要在命令行的开头使用sudo(请注意,如果已经存在-c选项,则-c选项会创建.htpasswd文件并覆盖它):
htpasswd -c /home/usernamehere/.htpasswd bob123
提示您为该用户提供并确认密码。如果您想添加其他用户,则可以通过重复先验命令来完成。例如:
htpasswd /home/usernamehere/.htpasswd nancy456
如果要检查.htpasswd文件的内容,则会看到类似于以下内容的内容:
bob123:$apr1$FaPCZHMe$jYiw5.9UevKx25pBH4AsT/
nancy456:$apr1$mrCHcVhc$oNdJeRcWKPk2z8dlzQI0x/
用户名之后的值是用户密码的加密版本。考虑到这一点,您可以创建一个相对简单的脚本,该脚本在创建和/或批准后自动将用户的凭据添加到.htpasswd文件中。
撰写者 Michael Brower / 六月 22, 2017