nginx中文文档-ngx_http_auth_basic_module

ngx_http_auth_basic_module模块允许通过HTTP基础认证方式使用用户名密码来限制对资源的访问。访问同样可以通过地址和子请求结果进行限制。同时通过地址和密码限制访问可以由satisfy指令进行控制。

示例配置

location / {
    auth_basic           "closed site";
    auth_basic_user_file conf/htpasswd;
}

auth_basic

语法:auth_basic string | off
默认:auth_basic off
上下文:http, server, location, limit_except

允许通过HTTP基础认证协议验证用户名和密码。定义的参数使用realm,参数值可以包含变量(1.3.10+, 1.2.7+)。off值会取消由上层继承下来的auth_basic值。

auth_basic_user_file

语法:auth_basic_user_file file
默认:—
上下文:http, server, location, limit_except

定义保存用户名和密码的文件,格式如下:

# comment
name1:password1
name2:password2:comment
name3:password3

文件名可以包含变量。
支持以下密码类型:

  • crypt函数加密的密码。可以通过Apache服务器的“htpasswd”应用或“openssl passwd”命令生成。
  • Apache基于MD5算法的变体哈希算法,可通过同一个工具生成
  • 通过“{scheme}data”语法定义(1.0.3+),详细描述见RFC 2307。目前实现的模式有PLAIN(举例,不应该使用)、SHA(1.3.13+)(plain SHA-1不应使用)、SSHA(加盐SHA-1)

添加对SHA模式的支持,只是便于从其他服务器的迁移。不应该用于新的密码,因为不加盐的SHA-1哈希算法易受彩虹表攻击。

nginx中文文档-ngx_http_addition_module

ngx_http_addition_module模块是一个在请求前后增加内容的过滤器。默认情况下,该模块不会构建,必须在编译时添加参数–with-http_addition_module才能开启。

示例配置

location / {
    add_before_body /before_action;
    add_after_body  /after_action;
}

add_before_body

语法:add_before_body uri
默认:—
上下文:http, server, location

在响应体之前添加一段子请求返回的文本,如果参数是个空字符串“”,则取消其他层级中继承的数值。

add_after_body

语法:add_after_body uri
默认:—
上下文:http, server, location

在响应体之后添加一段子请求返回的文本,如果参数是个空字符串“”,则取消其他层级中继承的数值。

addition_types

语法:addition_types mime-type
默认:addition_types text/html
上下文:http, server, location
版本:0.7.9+

为附加内容文本设置允许的MIME类型,如果是“*”表示任何的MIME类型(0.8.29+)。