阿里云Nginx配置ssl,nginx开启https,访问不了

一、问题描述

我这用nginx配置了ssl,配置好之后,通过https就访问不了了,没配置之后,还好好的。

二、解决方法

1.确定还没配置前http的能正常访问-【排除nginx的问题】
2.检查nginx是否安装ssl模块
进入到目录的sbin目录下,输入

#注意这里是大写的V,小写的只显示版本号
./nginx -V

如果有–with-http_ssl_module,说明已安装了ssl模块,否则从新编译安装ssl模块。
3.检测防火墙是否开启,如果开启是否开放了相应的端口。
4.配置证书并重启nginx后无法访问了-【配置文件有问题】。
5.检查阿里云的安全组那里是否开启443端口允许访问。
在这里插入图片描述
基本上就上面这几种问题,绝大多数都出在4,5这两点。我这就出在第三点,配置文件检查了几篇,没啥问题,通过nginx -t,返回的也是正确的,重启之后通过https就是访问不了,最后反复比对配置,查出来问题,官方这里讲了nginx如何配置ssl:https://help.aliyun.com/document_detail/98728.html?spm=5176.14113079.help.6.4b3b56a7ZRm3O0

关键配置如下:

	server {
    
    
		listen 80;
		server_name www.xxx.com;
        location / {
    
    
            proxy_pass  http://127.0.0.1:8087; # 转发规则
            proxy_set_header Host $proxy_host; # 修改转发请求头,让8080端口的应用可以受到真实的请求
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
	}
	
	server {
    
    
		listen 443 ssl;#监听https 443时需加ssl
		server_name www.xxx.com; #你的域名
		ssl_certificate   ../cert/5947977_www.xxx.com.pem;
        ssl_certificate_key  ../cert/5947977_www.xxx.com.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_pass  http://127.0.0.1:8087;
        }
	}

我就在配置443这里出了问题,我刚开始没有在443后面加ssl,死活访问不了,后面加上重启一下就行了。。

猜你喜欢

转载自blog.csdn.net/mashangzhifu/article/details/118708400