如何配置nginx以便Web服务器只允许通过IP地址访问并拒绝通过域名进行所有访问?

时间:2014-10-29 15:02:50

标签: nginx

假设我有一个在IP地址 1.2.3.4 上运行的网络服务器,域名 abc.com 解析为 1.2.3.4 。如何编写nginx.conf以便Web服务器仅允许通过IP地址 1.2.3.4 进行访问,并拒绝通过域名 abc.com 进行所有访问?< / p>

nginx.conf:

http {
    ...
    server {
        listen       80;
        server_name  1.2.3.4;
    }
    ...
}

目前我将 server_name 设置为 1.2.3.4 ,似乎可以通过 1.2.3.4 abc.com

1 个答案:

答案 0 :(得分:1)

我会定义两个服务器节。一个用于拒绝访问的 abc.com 。然后定义一个可以通过ip地址访问的全能服务器:

server {
    listen       80;
    server_name  abc.com;
    return       403;
}

server {
    listen       80  default_server;
    server_name  _;
}