0

使用 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,在最后一个配置中使用所有其他配置。

4

1 回答 1

1

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

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

于 2013-10-08T20:33:14.160 回答