为Nginx添加HTTPS证书

注:本教程主要测试Nginx服务器,其他服务器如Apache等同理。

准备工作

  1. 一个已备案的域名,(测试域名为ianhe.me);
  2. 可供访问的外网服务器,如阿里云ECS。

您将得到的结果

为您的网站实现HTTPS,传输将更加的安全,Chrome浏览器输入地址(如:www.ianhe.me)后观察地址栏状态:

Paste_Image.png

可查看证书信息:
为Nginx添加HTTPS证书_第1张图片
Paste_Image.png

1.准备证书文件

首先登录阿里云管理控制台-安全-证书服务,点击购买证书服务,进入证书购买页面(这里选择的是免费的证书服务),选择免费型DV SSL,显示证书品牌为Symantec,点击右侧立即购买购买此证书。

为Nginx添加HTTPS证书_第2张图片
Paste_Image.png

购买成功后在我的证书管理页面补全域名相关信息,等待供应商审核,审核完毕后点击右侧下载按钮下载证书文件(下载页面含有安装证书的说明)。
Paste_Image.png

该文件为zip压缩文件,FTP或直接通过SSH上传至服务器Nginx根目录。

2. Nginx配置

进入Nginx根目录,创建一个空文件夹(如:sslkey)

Paste_Image.png

将第一步准备好的证书zip文件解压缩至此目录,注: *.pem为证书文件, *.key为证书私钥文件,文件内容请勿修改。
Paste_Image.png

修改 nginx.conf文件,编辑 server段,修改监听端口为 443端口(HTTPS默认端口),开启 ssl监听,参考如下详细配置:
为Nginx添加HTTPS证书_第3张图片
Paste_Image.png

需要注意 ssl_certificatessl_certificate_key的路径必须填写正确,保存配置文件,重启nginx服务,去浏览器重新打开页面,输入地址: https://www.ianhe.me,查看结果。
如果觉得还要输入https很麻烦的话可以添加配置项,使得http请求默认跳转至https请求(见百度首页),在 nginx.conf中添加一条 server,具体配置如下:
为Nginx添加HTTPS证书_第4张图片
Paste_Image.png

这样在浏览器地址栏输入 www.ianhe.me可直接跳转至https。

以上,第一次写教程,感谢。

你可能感兴趣的:(为Nginx添加HTTPS证书)