【踩坑实录】Nginx重新加载时出现警告:nginx: [warn] conflicting server name "www.langp.wang" on 0.0.0.0:80, ignored

【踩坑实录】Nginx重新加载时出现警告:nginx: [warn] conflicting server name "www.langp.wang" on 0.0.0.0:80, ignored

知识分子没文化
2021-05-26 / 0 评论 / 1,363 阅读 / 167 字数 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年12月06日,已超过963天没有更新,如存在内容错误、图片加载失败、链接失效等问题,请留言反馈,博主将在第一时间进行修改。

环境说明:

系统:ubuntu 20.04

nginx:1.18.0

问题再现:

修改nginx配置文件后,在执行nginx -s reload命令重新载入nginx服务时出现错误:

01

nginx: [warn] conflicting server name "www.langp.wang" on 0.0.0.0:80, ignored
nginx: [warn] conflicting server name "www.langp.wang" on 0.0.0.0:443, ignored

可以看到提示“conflicting server name”,即“服务器名称冲突”,而且是在“80”和“443”两个端口上都有的。

错误原因:

在nginx的每一个server配置中都有一个“server_name”配置项,nginx是用“server_name”来确定域名与对应网站的关联的。而当nginx中出现了两个相同的“server_name”时,重新加载时nginx服务时就会出现冲突了,就会产生警告信息。由于提示信息只是“warn”级别的,所以网站还是能正常访问到的,可是这个警告信息还是让人觉得很不爽。

解决方法:

经过排查,发现是在配置文件的目录下(/etc/nginx/sites-enabled)多出来了一个与原来的配置文件名称相同,但是名称后缀为“.save”的文件。这个文件中的所有信息与原来文件的所有内容相同,所以就出现了两个相同的”server_name“。

把这个文件删除掉之后,再次执行命令nginx -s reload就没有警告信息了。

至于这个文件的来源,个人猜测可能是由于用nano编辑器编辑文件时产生的缓存或者是nano编辑器被强制退出时保存的信息。

0

评论 (0)

取消