nginx响应所有域

时间:2016-06-24 11:08:57

标签: ssl nginx amazon-ec2 dns

其他人在preview.theirdo.com.com上使用我的AWS EC2,因此我的节点服务器(在nginx后面)显示在谷歌搜索mydomain.com。

我已经关注了nginx陷阱,或者至少尝试过,但无法弄清楚为什么我的服务器仍在响应他们的域名。

这会阻止服务器完全响应,无论是www.mydomain.com还是preview.theirdomain.com。不是一个好的解决方案

当我注释掉第二台服务器listen 443; ...时,服务器完全对www.mydomain.com和preview.theirdomain.com开放

的/ etc / nginx的/ /默认启用位点-:

server {
    listen 80;
    server_name preview.theirdomain.com;
    return 404;
}
server{
       listen 443;
       server_name preview.theirdomain.com;
       return 404;
}

server {
    listen 80;
    return 404;
}
server {
    listen 80;
    server_name www.mydomain.com;
    return 301 https://$host$request_uri;
}


server {
    listen 443 ssl;

    server_name www.mydomain.com;

    #more stuff that works
}

来自google域名我只转发www.mydomain.com,正如您所看到的,服务器将所有内容重新路由到ssl。在preview.theirdomain.com上,https无效,因为我的证书仅适用于www.mydomain.com

/ etc / nginx / sites-enable中没有其他文件,而且我的想法用完了。

1 个答案:

答案 0 :(得分:0)

我在Freenode #nginx得到了帮助,解决方案是将default_server添加到我的服务器。

server{
    listen 443 ssl default_server;
    server_name www.mydomain.com;

    #more stuff that works
}

我确信有充分的理由。将它留在这里为其他任何处于崩溃边缘的人。