nginx配置ssl报错

1、错误信息

nginx: [warn] the "ssl" directive is deprecated, use the "listen ... ssl" directive instead in /etc/nginx/vhost/api.conf:16

2、问题分析

出现以上错误的过程是,我将nginx迁移到一部新机器,新机器的nginx版本是1.15.8,旧机器的版本是1.12.0。
其实错误信息也是比较明显了,不推荐使用ssl,而是使用listen …ssl
看了一些相关的帖子,1.15之后的版本都是推荐listen …ssl

3、配置修改

其实就是把原有的ssl on配置信息去掉就好,然后使用listen 443 ssl 代替即可

server {
	#listen 443; 修改该行信息,如下即可
	listen 443 ssl;
	server_name xxx.xxxx.com;

	#ssl on;  注释该行信息
	index index.html;
	ssl_certificate   /usr/local/nginx/cert/api/xxx.pem;
	ssl_certificate_key  /usr/local/nginx/cert/api/xxx.key;
	ssl_session_timeout 5m;
	ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
	ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
	ssl_prefer_server_ciphers on;

	location / {
	proxy_set_header  X-Forwarded-Host $host;
	proxy_set_header  X-Forwarded-Proto $scheme;
	proxy_set_header  X-Real-IP  $remote_addr;
	proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
	proxy_set_header Host $http_host;
	proxy_redirect off;
	expires off;
	sendfile off;
	proxy_pass http://xxx.xxx.com;
      }
}

4、重新reload配置

在nginx的sbin目录下,执行./nginx -s reload

你可能感兴趣的:(杂七杂八)