[Application] nginx配置SSL时出现 ERR_SSL_PROTOCOL_ERROR

Well…我看到很多的搜索结果是让你更改Chrome或者系统的Security Settings,即使是Google也是。

我要说的是,不要更改安全设置,除非你知道你在做什么。

大部分时间只是nginx的配置错误导致 ERR_SSL_PROTOCOL_ERROR

首先,如果有语法错误的话,使用

nginx -t

就能检查出配置文件内的语法错误。

示例输出:

root@******:~# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

//执行nginx -t时需要root权限,请使用sudo或者临时su到root账户。

//而且有语法错误的话nginx也无法正常启动,会提示配置文件错误

 

其次是nginx SSL设置,也就是我这种情况。

在server块中只设置了

listen 443;

而且就算这么设置,语法也是没有错误的,nginx -t不会提示任何错误

正确的设置应该为

server {
     listen 443 ssl;
}

重启nginx服务,问题解决。