环境说明:
系统:ubuntu 20.04
nginx:1.18.0
问题再现:
修改nginx配置文件后,在执行nginx -s reload
命令重新载入nginx服务时出现错误:
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)