微信小程序正式上线,服务端请求必须HTTPS
1月9日凌晨微信小程序正式上线,首批上线的小程序有三百多家,用户需要将微信更新至iOS6.5.3版本或Android6.5.3版本进行体验。
微信小程序自9月份首次开启内测就开始在圈内刷屏了,不需要下载安装,“用完即走”的理念,使其被誉为“APP杀手”。微信庞大社交用户基础,可能带来的业务爆发性上,这一波微信红利,开发者怎可错过?
但是微信对小程序也是有诸多的限制,例如文件大小、请求服务端必须是HTTPS等等。实现服务器端HTTPS请求,需要在服务器端配置sslz证书实现。说到SSL证书,很多开发者会觉得头大,因为SSL证书涉及多个种类,如何选择才能符合小程序的要求?如何配置SSL证书到服务器端?本篇要讲的就是在最短的时间内,让你的网站从HTTP升级到HTTPS。如果你开发的微信小程序还没有启用HTTPS,那么这篇文章也许可以帮到你。
SSL证书的作用
HTTP明文协议是不安全的传输协议,无法进行服务器端真实身份校验,也不能为传输数据提供加密保护,通过HTTP协议传输的数据时刻处在被窃听、篡改、冒充的风险中。HTTPS传输协议在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信进行加密,确保数据传输到正确的服务器端,并防止中间人窃取传输数据。
目前全球互联网正在从HTTP向HTTPS的大迁移,Chrome和火狐浏览器将对不采用HTTPS加密的网站提示不安全,苹果要求所有APP通信都必须采用HTTPS加密,小程序强制要求服务器端使用HTTPS请求,正是顺应了互联网安全的趋势。
微信小程序对HTTPS的要求
每个微信小程序必须事先设置一个通讯域名,并通过HTTPS请求进行网络通信,不满足条件的域名和协议无法请求。也就是说,请求request地址必须是合法域名,需要有SSL证书认证过。
SSL证书的选择
目前市面上的主流SSL证书可分为三大类,DV SSL证书(域名验证型)、OV SSL证书(企业验证型)、EV SSL证书(扩展验证型)。
DV SSL证书
DV SSL证书之所以被称为域名验证型SSL证书,是因为在申请时CA机构只审核域名的所有权,不验证域名所有者的真实身份。我们使用SSL证书,不仅仅用于传输加密,还因为它代表着网站身份是真实的、经过验证的,而DV SSL证书只能实现传输加密,无法验证网站所有者身份,是不完整的SSL证书产品,通常只适用于产品测试、个人网站、个人博客等方面。
企业级微信小程序在测试阶段可以选用沃通DV SSL证书,但是在正式上线后,最好换成企业级别的沃通OV或EV SSL证书。
OV SSL证书
OV SSL证书被称为企业验证型SSL证书,是因为申请时不仅需要验证域名所有权,还需要提交企业真实身份的验证材料。无法通过真实身份验证的用户,无法获取到OV级别的SSL证书,因此其具备加密传输和身份验证的完整功能。
如果您的小程序涉及多个域名,推荐使用沃通OV SSL多域名证书,可支持一张证书绑定一个顶级域名下的无数个通配符子域名或绑定100个多域名,是性价比很高的选择。
EV SSL证书
EV SSL证书被称为扩展验证型SSL证书,是因为申请EV SSL证书不仅需要验证域名所有权,按规定提交企业真实身份验证材料,还要求提供更加详细的企业信息(如具体营业地址等信息),并提供具有法律效力的证明文件(如律师函等)。经过EV级别验证的网站,身份真实可靠,浏览器也会对EV验证的网站进行特殊的品牌展示,比如浏览器地址栏显示绿色、直观展示网站所属单位名称等等,展现良好的品牌形象和公信力。
在产品性能标准化的SSL证书行业,优质服务成为开发者产品选型过程中要考虑的重点。
服务端配置SSL证书
以Ngnix为例,打开其中的for Nginx 文件可以看到 2 个文件,包括公钥、私钥。
打开Nginx安装目录下conf目录中的nginx.conf文件找到
#HTTPS server
#
#server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
# ssl_prefer_server_ciphers on;
# location / {
# root html;
# index index.html index.htm;
# }
#}
将其修改为 :
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate sslkey/public.cer; (证书公钥)
ssl_certificate_key sslkey/private.key; (证书私钥)
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1TLSv1.2;
ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
保存退出,并重启Nginx。通过https方式访问您的站点,确认站点证书安装配置正确即可,其实没有想象的那么难。如果你使用的是其他服务器。
微信小程序正式上线,服务端请求必须HTTPS相关推荐
- 微信小程序正式上线 可置于聊天窗口顶部
FROM:http://tech.qq.com/a/20170109/000599.htm?t=1483896728747 历经一年的等待后,小程序在2017年1月9日凌晨终于揭开神秘面纱,正式上线. ...
- “全国住房公积金”微信小程序正式上线 快速办理“异地转移”
10月23日消息,近日,"全国住房公积金小程序"微信小程序正式上线.用户可通过小程序实时查询.掌握公积金的金额情况,一键办理"异地转移"业务,享受更便捷的公积金 ...
- 关于微信小程序正式上线的那些事儿
期待许久的微信小程序正式于1月9日凌晨上线,用户只要将微信更新到最新版本(V6.5.3),即可通过扫描二维码,或搜索等方式体验微信小程序.体验微信小程序后,即可在微信「发现」菜单末尾出现诸如朋友圈各种 ...
- 微信小程序(PHP服务端)之仿淘票票,制作电影购票程序
微信小程序(PHP服务端)之仿淘票票,制作购票程序 前言 一.业务流程 二.效果图 总结 前言 这学期对PHP进行了学习,就编程而言,和常用的java开发思路都大同小异,但是PHP的部署是真的方便,这 ...
- 微信小程序支付java服务端集成采坑总结
先上个微信小程序支付官方文档地址: https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_7&index=8 重点看 ...
- 微信小程序初见+nodejs服务端 (一个简单的博客)
推荐网址: 腾讯云快速开发(nodejs前后端):https://developers.weixin.qq.com/miniprogram/dev/qcloud/qcloud.html#%E5%AF% ...
- spring boot开发QQ音乐微信小程序(包含服务端源码)
spring boot+spring mvc+spring整合开发QQ音乐微信小程序(含简单服务端) 项目描述: spring boot+spring mvc+spring代理请求QQ音乐接口获取数据 ...
- 韵达小程序服务器异常,微信小程序快递助手服务端API接入韵达快递返回9300501错误...
后端使用Tomcat服务器,JDK1.8版本,以下为发送的接口,参数和返回信息,提示"XML报文转换异常",我将接口,参数用同样的方式发送请求,用本地java程序发送,却返回成功, ...
- 微信小程序获取云服务器数据,微信小程序云开发服务端数据库API 获取集合数据...
Collection.get / Query.get 获取集合数据,或获取根据查询条件筛选后的集合数据. 如果没有指定 limit,则默认最多取 20 条记录. 如果没有指定 skip,则默认从第 0 ...
最新文章
- python until怎么用不了_为何你还不懂得如何使用Python协程
- mysql @value := 用法
- codematic2连接mysql失败_怎么连接oracle数据库
- Caused by: org.springframework.amqp.AmqpException: No method found for class [B
- isc-dhcp监听网口的实现步骤
- ActiveMQ在windows下启动失败解决方案
- 揭秘自编码器,一种捕捉数据最重要特征的神经网络(视频+代码)
- c语言存储类型重要吗,C语言储存类别(Storage Class)
- 【leecode】小练习(简单8题)
- Android自动化测试01-环境安装连接问题及解决
- HDU3785 寻找大富翁【优先队列】
- 彻底理解程序为什么会超时
- 曾经使用过的chart控件(mschart,XCL-Chart,vue-echart)
- linux开发板系统备份
- ceph的 cache tier实现分析
- 澳洲java待遇_2018年澳洲IT薪资一览,最新IT薪水Salary,给学IT的同学打一针鸡血...
- Windows下PuTTY远程连接Linux服务器并上传文件/更改默认端口号
- 还在花钱抢票?12306 已屏蔽60款抢票软件!
- python 抓取头条街拍图片
- Window系统下如何生成ssh key以及如何在码云中添加公钥