Nginx深入了解-高级(三)

Nginx 高级模块的使用。secure_link_module模块、geoip_module模块。

1,限制并允许检查请求的连接的真实性以及保护资源免遭未经授权的访问。

2,限制链接的生效周期。

配置语法

Syntax:secure_link expression;

Default:–

Context:http、server、location

Syntax:secure_link_md5 expression;

Default:–

Context:http、server、location

图示:

配置实例:

server {
    listen 80;
    ...
    location / {
        secure_link $arg_md5,$arg_expires;
        secure_link_md5 "$secure_link_expires$uri test";

        if ($secure_link = "") {
            return 403;
        }
        if ($secure_link = "0") {
            return 410;
        }
    }
}

二,geoid_module模块

给予IP地址匹配MaxMind GeoIP二进制文件,读取IP所在地域信息。

http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz

http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz

http_geoip_mpdule使用场景

  • 区别国内外作HTTP访问规则
  • 区别国内城市地域作HTTP访问规则

配置实例:

# 将下载模块load
load_module "modules/ngx_http_geoip_module.so";
load_module "modules/ngx_stream_geoip_module.so";

user nginx;
worker_process 1;
....
# 读取下载的maxmind文件
geoip_country /etc/nginx/geoip/GeoIP.dat;
geoip_city /etc/nginx/geoip/GeoLiteCity.dat;

server {
    listen 80;
    server_name localhost;

    location / {
        if ($geoip_counter_code != CN) {
            return 403;
        }
    }

    location /myip {
        default_type text/plain;
        return 200 "$remote_addr $geoip_country_name $geoip_country_code $geoip_city";
    }
}

  转载请注明: Mantis Nginx深入了解-高级(三)

 上一篇
Nginx深入了解-高级(四) Nginx深入了解-高级(四)
Nginx的https原理及实际应用场景。 HTTPS加密协议原理: 中间人伪造客户端和服务端: 使用CA证书解决中间人伪造客户端和服务端的风险,客户端对数字证书进行CA校验: 如果校验成功则利用公钥加密 如果校验失败则停止回话
2018-09-25 Mantis
下一篇 
Nginx深入了解-高级(二) Nginx深入了解-高级(二)
Nginx的Rewrite规则,实现url的重定向以及重写,用来实现特定场景的支持;比如特定页面、接口的转发等。 一,场景1)URL访问跳转,支持开发设计 ​ 页面跳转、兼容性支持、展示效果等。 2)SEO优化 ​
2018-08-18 Mantis