本文主要讲述如何在服务器上搭建https,主要用到的资源有阿里云的ECS服务器、域名,以及从腾讯云免费申请的SSL证书。阿里云的ECS服务器申请、域名的申请及备案不再多讲,已经很多教程了,下面主要讲如何从腾讯云免费申请的SSL证书,以及如何在阿里云配置域名解析,并使用Nginx实现https。
1、需要准备的资源阿里云ECS服务器(本文使用的为Ubuntu 16.04)
阿里云域名
腾讯云免费申请的SSL证书
Nginx
2、腾讯云免费申请的SSL证书先申请腾讯云账号,已有则跳过
进入控制台,进入SSL 证书,点击申请免费证书开始申请
证书申请页,填写相关信息后下一步
证书申请页,选择验证方式
申请成功后,查看证书详情
进入阿里云域名解析设置页,添加记录
添加完TXT记录后,等待腾讯云审核通过颁发证书,成功如下
下载证书并解压,目录结构如下,根据web服务器的不同选择即可
使用apt-get安装nginx
阿里云开通端口443和80
修改nginx配置文件,如下
user root; worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { # SSL 访问端口号为 443 listen 443 ssl; # 绑定证书的域名 server_name xxx.com; # 证书文件路径 ssl_certificate /home/project/xxx/1_xxx.com_bundle.crt; # 私钥文件路径 ssl_certificate_key /home/project/2_xxx.com.key; ssl_session_timeout 5m; # 请按照以下协议配置 ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # 请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; root /home/project/xxx/dist; # vue打包的dist目录 # 打开默认文件为index index index.html index.htm; # 官网介绍设置这条可以解决history路由的问题 location / { try_files $uri $uri/ /index.html; } } server { listen 80; # 绑定证书的域名 server_name xxx.com; # 把http的域名请求转成https return 301 https://$host$request_uri; } }使用域名访问https://xxx.com,如图示出现小锁即为成功