IP訪問限制使用 ngx_http_access_module 模塊,可以在 http
, server
, location
, limit_except 中配置,語法如下:
采用黑名單規則,禁止所有,添加訪問IP。
allow IP;
deny all;
想禁止所有虛擬主機的訪問,在nginx.conf配置:
include vhost/*.conf;
配置IP文件,允許訪問的IP添加文件中。
[root@yunwei-test vhost]# cat blockips.conf.bak # allow all ips allow 10.0.2.174; # block all ips deny all;
只想禁止某一個虛擬主機禁止訪問:
# 現在有兩個虛擬主機,bbs.qipai.com 和 www.qipai.com 現在想對訪問 www.qipai.com 做訪問限制。
[root@yunwei-test vhost]# ls bbs.qipai.conf blockips.conf.bak www.qipai.conf
[root@yunwei-test vhost]# cat www.qipai.conf server { listen 80; server_name www.qipai.com; allow 10.0.2.174; # 直接在server區塊中配置 deny all; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
這樣就對訪問 www.qipai.conf 的做了訪問限制,訪問 bbs.qipai.conf 不受影響。
官方文檔:http://nginx.org/en/docs/http/ngx_http_access_module.html