2012-09-16 78 views
2

我想密码保护我的整个网站。我正在运行Debian Squeeze。说我想我的用户名是“简”,我的密码是“V3RySEcRe7”。Nginx - 密码保护目录

在我的应用程序,nginx.conf:

auth_basic "Restricted"; auth_basic_user_file /etc/nginx/htpasswd;

在我的shell脚本我有这样的:

printf "Jane:$(openssl passwd -1 V3RySEcRe7)\n" >> /etc/nginx/htpasswd

当我去我的网站被密码保护,但我使用的凭据不起作用。我在哪里错了?

回答

9

我敢肯定,你现在有固定的这一点,但认为我会添加此为别人:

Nginx documentation是对这个有点神秘,但确实提到了“MD5的阿帕奇变种基于密码的算法(apr1)“应该用于生成密码哈希。因此,使用-apr1标志而不是-1将工作:

printf "Jane:$(openssl passwd -apr1 V3RySEcRe7)\n" >> /etc/nginx/htpasswd