我有很多域名。在nginx中配置为虚拟主机。它们都有相同的文档根。我想限制对大量不同ip的访问。有没有任何方法可以在最高级别进行,然后是虚拟主机配置?例如,在主http{}块中。
发布于 2015-02-12 00:32:03
是的,您可以使用模块阻止某些IP访问虚拟主机。此模块帮助您根据客户端IP地址创建具有值的变量。您可以在http级别定义IP。下面是一个例子。
http {
geo $spamers {
# --allow all --
default no;
#-- block these bad ips --
192.0.171.118 spam;
192.0.179.119 spam;
192.0.179.120 spam;
192.128.168.0/20 spam;
}您可以添加任意数量的IPs,然后在要限制这些IPs的服务器位置块中添加一个检查。
location ~* /mysite/www/ {
if ( $spamers = spam ) {
# -- Return a forbidden message
return 403;
}https://stackoverflow.com/questions/28466318
复制相似问题