我的服务器使用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, 配置起来会比较麻烦. 有没有更优雅, 通用的方式?
淡淡烟草味2017-05-16 17:30:45
你把默认域名配置成返回 403 的呗:
server {
listen 80 default_server;
location / {
return 403;
}
}
参见: http://wiki.nginx.org/NginxVirtualHostExample