nginx-nginx配置https

nginx-nginx配置https

背景

最近在做微信小程序,小程序需要走https协议的。so,就搞起了用nginx来代理这个443端口,默认就是留给https协议的

https证书的话,到某云上申请一个免费的证书,审核通过后,绑定一个域名,然后将这个域名解析到一台有公网IP的机器上,这样,就可以继续玩耍了^_^!!

解决方案

  • 将证书下载到随便一个文件夹,如cert,里面有两种类型的文件xx.pemxx.key

  • nginx.conf中增加server节点

   server {
        listen       443 ssl;
        server_name  yyy.xxx.com; # yyy.xxx.com 域名
        ssl on;

        ssl_certificate      /cert/cert/domain name.pem; # 将domain name.pem替换成您证书的文件名。
        ssl_certificate_key  /cert/cert/domain name.key; # 将domain name.key替换成您证书的密钥文件名

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  10m;

        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 /mall {
        	# 代理内部服务
            proxy_pass http://127.0.0.1:8080$request_uri;
            proxy_set_header  X-Real-IP  $remote_addr;
            proxy_set_header  Host "yyy.xxx.com";
            proxy_connect_timeout       180;
            proxy_send_timeout          180;
            proxy_read_timeout          180;
            send_timeout                1800;
        }
		
		# 代理h5静态页面
		location /h5 {
			root /usr/local/static/
			index index.html index.htm;
		}
    }

在nginx中别忘了reload一下,让修改的文件生效:

nginx -s reload

最后附上操作步骤: 在Nginx/Tengine服务器上安装证书

发布了76 篇原创文章 · 获赞 66 · 访问量 51万+

猜你喜欢

转载自blog.csdn.net/u013887008/article/details/104010871