已复制
全屏展示
复制代码

nginx配置禁止IP访问

· 1 min read

nginx禁止代理ip访问,当你不想通过IP地址访问到nginx时,可以通过配置正则表达式匹配 host,遇到IP则返回403状态码,注意 80 和 443 端口需要同时设置。

  • http 80 端口配置
# nginx 默认的 80 端口
server {
    listen 80 default_server;
    listen [::]:80 default_server;

    # 禁止IP访问
    if ($host ~* ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$) {
        return 403;
    }
    
    # 其他配置规则...
}


# 你自己的域名的 80 端口
server {
    listen 80 yourdomain.com;

    # 禁止IP访问
    if ($host ~* ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$) {
        return 403;
    }
    
    # 其他配置规则...
}
  • https 443 端口配置
server {
    listen 443 ssl;
    server_name yourdomain.com

    # 禁止IP访问
    if ($host ~* ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$) {
        return 403;
    }
    
    # 其他配置规则...
}

文章推荐