我的网站上有一个有效的子域;它和主域一起工作。但我想知道,如果有人进入伪造的子域怎么办?
我有这样的规则:
# throw away all other subdomains
server {
server_name ~^(.*)\.foo\.to$ ;
return 301 https://foo.to/notfound;
}
我以为这可以解决问题,但浏览器却抱怨:
DNS address could not be found.
当然,我认为这是有道理的。但为什么当我转到不存在的 GitHub Pages 子域(https://adfljaslfdjalsfdkjalfgsjklakfgjlajrgiajeroigjtaoi4jto.github.io/)时,that确实发送了 404?我该如何模仿?
如果有人谷歌到这里:
花了一些时间研究后,我发现这很容易。
首先,我们必须禁止所有带有通配符的服务器:
server {
listen 80;
server_name *.example.com;
return 404;
}
然后您可以将所有已知的子域定义为服务器。