除了www.website.com之外的所有配置?

时间:2013-10-08 20:14:39

标签: configuration nginx

使用Nginx,我尝试将我的服务器配置为接受所有指向我服务器IP的域,通过向他们展示特定网站,但在访问www.example.com(主网站)时,我会展示其他内容。

这是我到目前为止所做的:

server {
    // Redirect www to non-www
    listen       80;
    server_name  www.example.com;
    return       301 $scheme://example.com$request_uri;
}

server {
    listen       80;
    server_name  example.com;
    // rest of the configuration
}

server {
    // Catch all
    listen       80 default_server;

    // I also tried 

    // server_name _;

    // Without any luck.

    // Rest of the configuration
}

此配置的问题在于,对此服务器不是www.example.com或example.com的每个请求都是在example.com服务器配置下进行的,而不是全部捕获。

我希望在前两种配置中仅使用www.example.com/example.com,而在最后一种配置中使用所有其他配置。

1 个答案:

答案 0 :(得分:1)

我建议将您的服务器放在文件的顶部:)

我认为nginx希望默认服务器位于-a-文件之上。 我的服务器上有很多文件,但有一个默认服务器作为第一个服务器声明,并且有效。