我有多个网站(只是一个静态网站)指向同一服务器。在这个服务器上,我使用的是Nginx。我有多个配置文件,每个网站的每个配置文件。例如,下面是我的示例:
server {
root /var/www/example/build;
server_name example.com www.example.com
index index.html index.htm;
location / {
try_files $uri $uri/ /index.html;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = www.example.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = example.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80 default_server;
server_name example.com www.example.com
index index.html index.htm;
return 404; # managed by Certbot
}当我运行以下命令时:sudo nginx -t用于检查nginx语法。我遇到这样的警告:
nginx: [warn] conflicting server name "index" on 0.0.0.0:443, ignored
nginx: [warn] conflicting server name "index.html" on 0.0.0.0:443, ignored
nginx: [warn] conflicting server name "index.htm" on 0.0.0.0:443, ignored
nginx: [warn] conflicting server name "index" on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name "index.html" on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name "index.htm" on 0.0.0.0:80, ignored我已经测试过了,并发现这些警告并不是问题所在。(因为我监听多个文件的相同端口)。但我不知道是否删除其中一个文件中的侦听端口,有什么问题吗?还有其他方法来禁用这个警告吗。
谢谢
发布于 2018-08-12 20:42:20
您只是忘了在;的末尾添加一个server_name
server_name example.com www.example.com
index index.html index.htm;Nginx将继续读取下一行,使用index、index.html和index.html作为替代服务器名。
https://stackoverflow.com/questions/51812383
复制相似问题