nginx配置https出现no ssl_certificate错误

今天给测试环境配置https的时候遇到了问题。

先后排除了证书错误,防火墙,nginx -V确定相关模块存在,但是依然不行。

查看 nginx error日志

发现如下结果:

1
2
2017/11/22 12:18:11 [error] 18365#18365: *10 no "ssl_certificate" is defined in server listening on SSL port while SSL handshaking, client: 120.197.49.xxx, server: 0.0.0.0:443

寻找资料,提到是监听了443端口,但是没有指定证书之类的东西。

于是我cat /etc/nginx/conf.d/* | grep 443
发现一条

1
2
3
4
5
6
7
server {
listen *:443 default;
server_name _;
return 444;
access_log off;
}

之前为了屏蔽空主机名瞎访问,我添加了一条80端口的,又想当然地配置了一个443的。

现在把这个注释掉,重启nginx。一切正常。

参考资料

参考资料

关注公众号 尹安灿