前提:购买云服务器,创建实例,购买域名,ICP备案 >>阿里云官网
刚开始没配置 https,因为起初的学习实践并没遇到什么障碍,nginx + vue + pm2 也能愉快的玩耍。
后来在不断实践过程中遇到不少需要 https 的地方:
- 网页被劫持
- 某些
API仅支持在安全上下文环境下调用,如调用getUserMedia ()方法,否则报 undefined 错误 - 微信小程序 配置服务器合法域名时要求
https
进入正题,开始配置免费 https 服务(个人学习用够了)
购买免费证书
- 登录阿里云管理后台-进入SSL证书概览-点击
购买证书
- 选择免费证书-点击立即购买
- 购买成功页面,可
前往证书控制台
证书申请
- 证书控制台-点击
证书申请
刚购买的证书是
待申请状态
- 填写证书绑定域名等信息
主要填写证书绑定域名,联系人,其他默认,申请成功后进入
申请审核中状态
- 申请通过后证书是已签发状态
证书申请审核过程很快,基本秒过
配置证书
- 下载证书
根据你的服务器类型选择相应下载,我选择的是
nginx,下载下来有两个文件:xxx.pem和xxx.key,如下所示:
nginx https配置
- 远程登录你的云服务器,将下载的证书文件放置
/usr/local/nginx/cert/路径下
- 修改
nginx配置文件:/etc/nginx/nginx.conf
# Settings for a TLS enabled server.
#
server {
listen 443 ssl http2 default_server;
listen [::]:443 ssl http2 default_server;
server_name _;
root /usr/share/nginx/html;
ssl_certificate "/usr/local/nginx/cert/xxx.pem";
ssl_certificate_key "/usr/local/nginx/cert/xxx.key";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers PROFILE=SYSTEM;
ssl_prefer_server_ciphers on;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
nginx.conf文件默认有上述配置部分,只是注释掉了,放开注释即可,另外将xxx.pen和xxx.key改成你的实际名称
- 检查你的云服务器是否授权
443端口访问
点击
配置规则查看,如没有授权443端口访问,请自行添加
- 检查你的安全组是否关联相关实例
如果
相关实例是0,按下图所示添加相关实例
- 检验你的
https是否配置好
打开浏览器,输入: https://你的域名,是否出现 nginx 测试页面
一定要检查 443 端口是否授权访问 和 安全组是否关联相关实例,我配置的时候没注意这两点,掉坑了大半天时间。