说到小程序开发,很多人都觉得开发是在微信上操作,应该不需要服务器,但其实并不是这样的,小程序的前端确实是在微信上,但是小程序的后台需要用到服务器,并且不要第三方服务器的话,数据等都没办法存储。所以首先我们得了解小程序使用服务器是用来做什么的,一般来说是用于数据存储和后台开发等方面。
操作步骤如下:
1、首先用小程序账号登陆微信公众平台。然后点击左下角的“设置”,之后点击右侧上部
的“开发设置”,进入开发设置页面。
2、在开发设置页面有几个区域,第一个区域叫“开发者ID”,第二个区域叫“服务器域名”。
我们关注的就是“服务器域名”这个区域。可以看到这个区域可以设置四个信息,request合法
域名、socket合法域名、uploadFile合法域名和downloadFile合法域名。点击最右侧的“修
改”链接,可以对这四个信息进行修改。
3、假设你实际使用的地址是https://www.suchengapp.com,那么填写的时候只需要填写
www.suchengapp.com就可以了。https://的部分是公众平台会自动补充上去的。
4、request合法域名基本上一定要填写,因为只要小程序需要服务器,基本上就需要这个设
置。socket合法域名一般是小程序功能涉及即时通信时需要。uploadFile合法域名和
downloadFile合法域名分别是小程序功能涉及上传文件和下载文件时需要。也就是说第一项
很多人在生活当中接触到了与小程序相关的一系列信息后,对于这类的小程序有了更为明确的判断。尤其是在使用过程当中,不少人会对小程序需要服务器吗这个问题产生一定的质疑,那么在实际使用微信小程序的过程当中,人们需要通过服务器的帮助来解决这些问题吗?
在小程序的生产环境中,如果需要调用服务器的 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 地址。大功告成!
大致也就写到这里,如果以后有任何心得,再来续写。如果对小程序开发十分感兴趣,想要抢占一波红利,也可以到「速成应用小程序」www.suchengapp.com 诚招代理,互利共赢。