首页 > Nginx禁止其他域名访问

Nginx禁止其他域名访问

我的服务器使用Nginx搭建, 现在有一个场景如下:

A.com的A记录指向a.b.c.d
B.com的A记录指向a.b.c.d

我的Nginx设置

listen a.b.c.d:80 default;
server_name A.com;

目前访问B.com时也会默认打开我的站点, 并且站内资源也可正确被引用.

请问如何配置能够让B.com及其他域名无法访问?

我了解如果加入一条判断if{}可以把其他域名返回错误代码, 但如果有多个vhost, 配置起来会比较麻烦. 有没有更优雅, 通用的方式?


你把默认域名配置成返回 403 的呗:

server {
  listen 80 default_server;
  location / {
    return 403;
  }
}

参见: http://wiki.nginx.org/NginxVirtualHostExample

【热门文章】
【热门文章】