Nginx其他模組配置語法
#Nginx請求限制
#limit_conn_module 連線頻率限制
#定義:
Syntax: limit_conn_zone key zone=name:size;
Default: ——
Context:http
#使用:
Syntax: limit_conn zone number;
Default: ——;
Context:http,server,location
#limit_req_module 請求頻率限制
#定義
Syntax: limit_req_zone key zone=name:size rate=rate;
Default: ——
Context:http
#使用
Syntax: limit_req zone [burst=number][nodekay];
Default: ——
Context:http,server,location
#例:
#定義連線頻率限制 客戶端ip地址 名字:大小
#limit_conn_zone $binary_remote_addr zone=conn_zone:1m;
#定義請求頻率限制 客戶端ip地址 名字:大小 速率
#limit_req_zone $binary_remote_addr zone=req_zone:1m rate=1r/s;
# location / {
# root /opt/app/code;
# limit_conn conn_zone 1;
# burst=3 超過請求個數,遺留3個請求到下一秒請求 nodelay:其他直接返回
# #limit_req zone=req_zone burst=3 nodelay;
# #limit_req zone=req_zone burst=3;
# #limit_req zone=req_zone;
# index index.html index.htm;
# }
#-----------------------------------------------------------------------------------------
#Nginx訪問控制
#-http_access_module 基於IP的訪問控制
#允許配置
Syntax: allow address|CIDR|unix:|all;
Default: ——
Context:http,server,location,limit_except;
#禁止配置
Syntax: deny address|CIDR|unix:|all;
Default: ——
Context:http,server,location,limit_except;
#例1禁止222.128.189.17:
# location ~ ^/admin.html {
# root /opt/app/code;
# deny 222.128.189.17;
# allow all;
# index index.html index.htm;
# }
#例2只允許222.128.189.0/24:
#
# location ~ ^/admin.html {
# root /opt/app/code;
# allow 222.128.189.0/24;
# deny all;
# index index.html index.htm;
# }
#http_auth_basic_module侷限性
#方法一、採用別的HTTP頭資訊控制訪問,如http_x_forward_for
#方法二、結合geo模組
#方法三、通過HTTP自定義變數傳遞
#-http_auth_basic_module 基於使用者的信任登入
#配置
Syntax: auto_basic string|off;
Default: auto_basic off;
Context:server,location,limit_except;
Syntax: auto_basic_user_file file;
Default: ——
Context:http,server,location,limit_except;
#使用步驟:
#1.生成使用者名稱密碼配置檔案 :htpasswd -c ./auth_conf name
#2.配置:
# location ~ ^/index1.html {
# root /usr/share/nginx/html;
# 提示資訊
# auth_basic "Auth access test!";
# 密碼檔案
# auth_basic_user_file /etc/nginx/auth_conf;
# index index.html index.htm;
# }
#http_auth_basic_module侷限性
#1.使用者資訊依依賴檔案方式
#2.操作管理機械,效率低下
#解決方案
#.Nginx結合LUA實現高效驗證
#.Nginx和LDAP打通,利用nginx-auth-ldap模組