做微信小程序不得不面对的一个问题就是搭建微信小程序服务器,尤其现在的HTTPS。因为一直以来用的都是阿里的服务器,所以这次继续在阿里云上注册了域名和购买了云服务器ECS。(基于腾讯云搭建微信小程序服务器的朋友,朋友或许并不能帮助你太多!)

ECS的配置是弹性的,可以根据自己的需要来选择合理的配置,如果你是个初学者为了学习用的话,一开始选择最低配置就行了。

搭建微信小程序服务器(HTTPs)-LMLPHP

因为在小程序的生产环境中,为了安全考虑,调用服务器的REST API或WebSocket的话,服务器必须提供安全的链接地址(如https://mydomain/myservice, wss://mydomian),即需要使用SSL。所以我们需要为我们的服务器购买CA证书和域名。

在阿里云上注册域名还是很方便的,可以到https://wanwang.aliyun.com这个页面去注册一个。而CA证书,很多国内外机构都提供证书签发认证,国内的比如沃通,国外的如Symantec,这个证书还是有点贵的,根据证书的不同功能,价格也是相差很大,最便宜的也要好几百一年。现在也有免费的证书可以使用,比如Let's Encrypt。不过,阿里云上也提供了免费的证书,申请起来很方便,我们就来看看怎么申请阿里云里的免费证书。

从阿里云的页面顶部菜单“产品与服务”里面,可以看到“CA证书服务”:

搭建微信小程序服务器(HTTPs)-LMLPHP

进入页面后,点击页面右上角的“购买证书”按钮,进入证书选择界面:

搭建微信小程序服务器(HTTPs)-LMLPHP

在这里可以选择“免费型DV SSL”证书,这种证书购买一个证书只能对一个明细域名生效,也就是说如果你有几个子域名,如blog.mydomain.com, www.mydomain.com, shop.mydomain.com的话,你分别需要购买3个证书。购买完成后,可以在你购买的订单列表里,点击“补全”信息,输入要绑定这个证书的域名,以及你的个人详细信息等等,提交给签发机构审核,审核完成后,你之前填写的邮箱里也会收到一封如何设置的邮件(这个邮件主要是给域名不是在阿里云注册的用户的设置指南,如果域名在阿里云注册,则会自动对你的域名添加解析记录,不需要你手动去添加)。

然后,请在订单列表中,点击“下载”证书文件的按钮,下载证书文件,里面包含了一些对于不同http server用的证书,如apache, nginx, IIS等,它们用于配置你服务器上安装的http server。

我在ECS上安装的是CentOS,通过yum安装nginx:

然后把服务器证书上传到服务器上,接着配置nginx.conf文件(改配置文件在/etc/nginx目录下),使其支持https的url访问:

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 / {
}
}
登录后复制

这样,你的http server就配置好了。接着,阿里云的域名解析控制台中,为你的域名添加一条A解析记录,将你的域名指向你的ECS服务器的公网IP地址,就行了。

然后,你就可以使用https开头的url来访问你的http服务啦!这只是一个简单的开始,还有很多服务器端开发和配置的东西在等着你!

以上就是本来在配置https微信小程序服务器时遇到的情况以及详细讲解!

如果大家在配置的过程中有任何问题,可以在这里我留言。

更多搭建微信小程序服务器(HTTPs)相关文章请关注Work网!

09-17 15:49