搭建微信小程序 HTTPS 服务器,只需三步
知晓程序注:
微信小程序中,要求所有服务器通讯使用 HTTPS 协议的安全连接(即增加 SSL 加密)。
也就是说,除了按照小程序要求进行数据收发,还要为服务器配置加密证书。这就让不少小程序开发者非常头疼。
知晓程序(微信号 zxcx0101)今天为大家推荐这篇文章,可以帮助大家快速申请加密证书、配置 HTTPS 服务器,并尽快将小程序应用于生产环境中。
本篇文章以阿里云为例,展示证书申请、配置等。此方法也可举一反三,应用于其他云服务器中。
文 | 一斤代码
在小程序的生产环境中,如果需要调用服务器的 REST API 或 WebSocket,服务器必须提供安全的链接地址。也就是说,服务器需要使用 SSL 加密数据。
因此,我们需要在服务器中配置 SSL 加密。
第一步:申请服务器与域名
许多云服务商的云服务器配置是弹性的,可以根据自己的需要来选择合理的配置,如果你是个初学者为了学习用的话,一开始选择最低配置就行了。
当然,如果你有业务需求,也可以选择更高配置的服务器。
小程序的网络访问必须使用白名单中的地址,这意味着我们需要一个域名,便于加入微信的域名白名单中。
你可以在云服务商直接提供的域名购买服务中购买域名,也可以到域名服务商购买。
第二步:申请证书
很多国内外机构都提供 CA 证书签发认证,国内的如沃通,国外的如 Symantec。 很多证书提供商的证书服务价格不菲 ,根据证书的不同功能,价格也是相差很大,最便宜的也要好几百一年。
现在也有免费的证书可以使用,比如 Let’s Encrypt。阿里云上也提供了免费的证书,申请起来很方便,我们就来看看怎么申请阿里云里的免费证书。
从阿里云的页面顶部菜单「产品与服务」里面,找到「CA 证书服务」。
进入页面后,点击页面右上角的「购买证书」按钮,进入证书选择界面。
在这里,我们可以选择「免费型 DV SSL」证书。
需要注意的是, 申请一个这样的证书,只能对一个明细域名生效。 也就是说,如果你有几个子域名,你需要分别为它们申请不同的证书。
购买完成后, 可以在你购买的订单列表里点击「补全信息」,输入域名和个人信息等 ,提交给签发机构审核。
审核完成后,你的邮箱里会收到一封配置指导邮件。之后, 你就可以在订单列表中下载到证书文件了。
证书文件里包含了一些适合 Apache、Nginx、IIS 等不同 HTTP 服务器可用的证书,这些都可以用于配置服务器的 SSL 加密。
第三步:在服务器中配置证书
由于我在服务器上安装的是 CentOS 和 Nginx,所以以下指令都是以 CentOS 为例。
首先,通过
yum
安装 Nginx。
yum install nginx
接下来,把服务器证书上传到服务器上,并配置
nginx.conf
文件(在
/etc/nginx
目录下),使其支持 HTTPS 协议。
server {
listen 443 ssl http2 default_server;
listen [::]:443 ssl http2 default_server;
server_name _;
root /usr/share/nginx/html;
ssl on;
ssl_certificate "xxxxxx.pem"; #你的证书文件中的pem文件
ssl_certificate_key "xxxxxx.key"; #你的证书文件中的key文件
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
include /etc/nginx/default.d/*.conf;
location / {
}
}
重启服务之后,服务器的 SSL 加密,就配置好了。接着,在解析服务的控制台中,为你的域名添加一条 A 解析记录,将你的域名指向你的服务器公网 IP 地址。大功告成!
接下来,你就可以在服务器中配置小程序数据交换模块了。当然,具体的配置根据不同的环境而有所不同,大家可以自行探索有关小程序的后端开发资料。
原文地址: http://www.jianshu.com/p/132eed84bc4f
本文由知晓程序授权转载,关注微信号 zxcx0101,回复「 1228 」获得全网第一本《小程序入门指南》电子书。