如何在www子域上的nginx上托管2个虚拟主机?

时间:2015-11-24 22:14:41

标签: nginx webserver subdomain cname

我是这一切的新手,已经努力了4天没有取得任何重大成功。也许这只是一件小事,希望你能帮助我!到目前为止在这里找不到答案(至少到目前为止没有任何结果):

我有一个域名,例如example.com注册。我还添加了一个子域test.example.com并将其作为CNAME添加到example.com。

然后我安装了nginx并按照https://www.digitalocean.com/community/tutorials/how-to-set-up-nginx-server-blocks-virtual-hosts-on-ubuntu-14-04-lts上的教程设置它,稍微改动一下,我现在在一个配置文件中有两台服务器。简而言之,它看起来像这样:

在etc / nginx / sites-enabled / example.com

server {
    listen 80;


    root /var/www/example.com/html;
    index index.html index.htm;

    server_name example.com www.example.com;

    location / {
        try_files $uri $uri/ =404;
    }
}


server {
    listen 80;

    root /var/www/test.example.com/html;
    index index.html index.htm;

    server_name test.example.com www.test.example.com;

    location / {
        try_files $uri $uri/ =404;
    }
}

example.com工作正常,并在broswer选项卡中显示“welcome to example.com”,以及example.com服务器按预期运行的一些文本(由我在示例中定义index.html)。

但是:如果我去test.example.com,它会在“欢迎来到example.com”标签中显示我,或者它应该是“欢迎**测试。** example.com”并且没有html所有页面都显示给我。这只是一个空白页面。

有人能帮助我吗?我不知道,如果我已经获得了cname域名的内容,或者是否有错误。

提前谢谢你!: - )

1 个答案:

答案 0 :(得分:0)

我能够解决我的问题。它不在服务器上,而是在我的域名提供商中设置错误。我不必转发我的域名,只需将其设置在名称服务器中,而不是指向ip!