server {
        listen       80;
        server_name t.abc.com;
        rewrite ^/(.*)$ http://${variant}/$1;
        #charset koi8-r;        #access_log  logs/host.access.log  main;        location / {
            root   html;
            index  index.html index.htm;
        }
}之前server_name t.abc.com t.efg.com
之前是这么写,绑定了两个域名,现在删除掉一下,但发现t.efg.com还是可以访问
nginx restart和reload都做了,还是没有效果,
纳闷中

解决方案 »

  1.   

    再加一个server小节,作为默认站点
    server {
        listen 80 default_server;
        server_name _;
        return 403;
      

  2.   

    域名解析删除了吗,例如dnspod
      

  3.   

    没有匹配到,默认选取第一个server_name,可以再加个测试下看看
      

  4.   

    我不是要默认访问,是原来80端口绑定了两个域名,现在删除掉一下,那个被删除的还可以访问,怪了。
    这两个域名是指向同一个IP。你这个server站点应该是自己额外添加的吧,如果匹配不到,会默认访问本身自带的server站点,也是80端口。
    因为你这几个站点访问的都是同一个页面(比如Nginx官网),实际上删除的域名已经访问不到了。如何验证?
    将你设立的站点指定访问另一个页面,不删除可以访问,删除后再访问就是Nginx首页了。试试。
      

  5.   

    你必须删除客户端的域名缓存。因为t.efg.com解析成功后,会在本地缓存其ip,访问的时候本地域名解析服务会将该域名直接解析到ip上,和你的nginx的配置无关了。