ngx_http_auth_basic_module 该模块可以使你使用用户名和密码基于 HTTP 基本认证方法来保护你的站点或其部分内容。 __实例配置__ ``` location / { : auth_basic "Restricted"; : auth_basic_user_file conf/htpasswd; } ``` 指令 ``` [#auth_basic auth_basic] [#auth_basic_user_file auth_basic_user_file] Template:Anchor ``` auth_basic 语法: auth_basic [ text|off ] 默认值: auth_basic off 作用域: http, server, location, limit_except 该指令包含用于 HTTP 基本认证 的测试名和密码。分配的参数用于认证领域。值 "off" 可以使其覆盖来自上层指令的继承性。 ``` Template:Anchor ``` auth_basic_user_file 语法: auth_basic_user_file the_file 默认值: no 作用域: http, server, location, limit_except 该指令为某认证领域指定 htpasswd 文件名。 文件格式类似于下面的内容: 用户名:密码 用户名2:密码2:注释 用户名3:密码3 密码必须使用函数 crypt(3) 加密。 你可以使用来自 Apache 的 htpasswd 工具来创建密码文件。 你也可以使用perl 创建密码文件,pw.pl 的内容: ``` #!/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()密码