1,nginx限制IP访问,允许IP访问
1.1 模块:nginx_http_access_module
注意:检测顺序是按配置顺序进行的,匹配首条规则将会被使用,所以要注意在配置文件配置的顺序。
a,指令:allow
语法:allow [address|CIDR|all]
默认:none
使用环境:http,server,location,limit_except
功能:指定网络地址或IP允许访问
b,指令:deny
语法:deny[address|CIDR|all]
默认:none
使用环境:http,server,location,limit_except
功能:指定网络地址或IP禁止访问
1.3 示例:
location / {
root /usr/share/nginx/html;
allow 192.168.20.150;
deny all;
}
2,提供FTP下载功能
2.1 模块:ngx_http_autoindex_module
注意:它的功能是在一个没有index.html的目录中提供文件的自动列表,换言之,只有ngx_http_index_module找不到index文件时,客户端的请求才会到ngx_http_autoindex_module
2.2 指令
a,指令:autoindex
语法:autoindex[on|off]
默认:autoindex off
使用环境:http,server,location
功能:启用或禁用自动目录列表
b,指令:autoindex_exact_size
语法:autoindex_exact_size[on|off]
默认:autoindex_exact_size on
使用环境:http,server,location
功能:用于在目录列表中设定文件大小的格式,如果是以精确的大小显示,就使用KB, 如果是以取整表示,就使用KB,MB,GB,默认为精确显示大小。
c,指令:autoindex_localtime
语法:autoindex_localtime[on|off]
默认:autoindex_localtime off
使用环境:http,server,location
功能:j是否在目录列表中以本地是间显示文件的时间,默认为off,即使用GMT时间,使用该指令要注意,在时间显示上有很大不同
2.3 示例:
location / {
root /ftp;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
limit_rate 1k; #指定每秒该连接能下载的bytes,主要用来限制个别请求的带宽
}
3,提供访问身份验证功能
3.1 模块:ngx_http_auth_basic_module
注意:它的功能是使用“HTTP基本认证”协议验证用户名和密码来限制对资源的访问。
3.2 指令
a,语法:auth_basic string | off;
默认:auth_basic off;
使用环境:http, server, location, limit_except
功能:开启使用“HTTP基本认证”协议的用户名密码验证。 指定的参数被用作 域。 参数off可以取消继承自上一个配置等级 auth_basic 指令的影响。
b,指令:auth_basic_user_file file
语法:auth_basic_user_file file
默认:-
使用环境:http, server, location, limit_except
功能:指定保存用户名和密码的文件
3.3,示例:
1,yum -y install httpd-tools # 安装 htpasswd 工具
2,htpasswd -bc /usr/nginx/conf/user.passwd username password
3,vim nginx.conf
server {
listen 80;
server_name localhost;
auth_basic “nginx Auth”;
auth_basic_user_file /usr/nginx/conf/user.passwd;
….
}