时间:2021-02-04日 来源: 作者: 
	那么 在 nginx.conf 文件中对应的 server 段中 添加 
	
	location ^~ /test/ { 
	auth_basic TEST-Login; 
	auth_basic_user_file /root/htpasswd; 
	
	再在 root 的主目录中 /root/ 创建一个新文件 htpasswd 
	此文件的书写格式是 
	用户名:密码 
	每行一个账户 
	并且 密码必须使用函数 crypt(3) 加密 
	
	官方档说 可以用 Apache 的 htpasswd 工具来创建密码文件 
	当然也可以使用perl 创建密码文件 新建 一个 pw.pl 文件 其内容: 
	复制代码代码如下:
	
#!/usr/bin/perl
use strict;
	
my $pw=$ARGV[0] ;
print crypt($pw,$pw).”n”;
#!/usr/bin/perl
use strict;
my $pw=$ARGV[0] ;
print crypt($pw,$pw).”n”;
	
	然后执行 chmod +x pw.pl 
	./pw.pl password 
	papAq5PwY/QQM 
	papAq5PwY/QQM 就是password 的crypt()密码 
	然后 将上面用 perl 生成的 加密后的密码 
	按照 
	用户名:密码 
	的格式写到 htpasswd 文件中 
	
	这样既完成了设置 
	
	如果 不用 
	^~ /test/ 
	而用 
	/test 
	的话 那么 将只能对目录进行验证 直接访问其下的文件 将不会弹出登录验证 
	
	还有 htpasswd 这个文件的名字可以 自己随意设置 
	用户名 也是 自己随意设置 无需加密 
	密码必须使用函数 crypt(3) 加密
相关文章
推荐文章
热门文章
