Nginx禁止其他域名访问

【字号: 日期:2022-06-30浏览:27作者:雯心

问题描述

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

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

我的Nginx设置

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

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

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

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

问题解答

回答1:

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

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

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

相关文章: