Nginx配置Https

申请阿里云 ssl 证书

进入阿里云域名管理中点击你要升级为 https 的域名,基本信息中点击免费开启 SSL 证书。


点击申请后,授权系统自动添加TXT解析记录,自动完成域名授权验证。
等待几分钟,审核通过后,证书状态变为 “已签发” 后证书就申请成功了。

下载证书 & 上传证书

点击已签发证书的下载按钮,这里我选择 Nginx 类型的证书,下载压缩包到本地。

下载的文件有两个:

接下来,把证书上传到服务器,我在 nginx 下新建了 cert 的目录并上传。

配置 Nginx

编辑配置文件 xx.conf ,这里我仅以自己的配置举例,配置中的域名,证书名,静态文件存放目录要根据实际的情况进行修改。
在配置文件中添加:

server {
    listen 443;
    server_name yelanqiu.com www.yelanqiu.com;
    ssl on;
    ssl_certificate  /etc/nginx/cert/2362349_www.yelanqiu.com.pem;
    ssl_certificate_key /etc/nginx/cert/2362349_www.yelanqiu.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:8080;
        proxy_set_header Host $host:$server_port;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Port $server_port;
    }
}
server {
    listen 80;
    server_name yelanqiu.com www.yelanqiu.com;
    rewrite ^(.*)$ https://$host$1 permanent;
}

配置完成后,检查一下 nginx 配置文件是否可用,有 successful 表示可用。

nginx -t // 检查nginx配置文件

配置正确后,重启 Nginx 使配置生效。
浏览器访问,如果出现访问不了,注意检查一下是否在安全组中添加了 443 和用到的其他端口。
至此,nginxhttps 访问就完成了,并且通过 rewrite 方式把所有 http 请求也转成了 https 请求,更加安全。

参考

https://learnku.com/articles/10017/use-the-ali-cloud-free-ssl-certificate-to-turn-your-web-site-from-http-to-https
https://juejin.im/post/5b88b58151882542db3bedf7


  转载请注明: ANZHONGYU Nginx配置Https

 上一篇
使用frp实现内网穿透 使用frp实现内网穿透
简介对于没有公网 IP 的内网用户来说,远程管理或在外网访问内网机器上的服务是一个问题。通常解决方案就是用内网穿透工具将内网的服务穿透到公网中,便于远程管理和在外部访问。内网穿透的工具很多,如花生壳等等。今天给要介绍的是另一款好用内网穿透工
2019-06-20
下一篇 
CSS 实现鼠标悬停弹出图片 CSS 实现鼠标悬停弹出图片
特点 纯 CSS 实现,减少加载 JS 使用 CSS3 transform 属性 实现利用 img 标签将二维码图片放在 a 标签链接中,为了防止跳转 href 超链接写 "javascript:void(0)": &
2019-06-05
  目录