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相关推荐

  1. 微信小程序正式上线 可置于聊天窗口顶部

    FROM:http://tech.qq.com/a/20170109/000599.htm?t=1483896728747 历经一年的等待后,小程序在2017年1月9日凌晨终于揭开神秘面纱,正式上线. ...

  2. “全国住房公积金”微信小程序正式上线 快速办理“异地转移”

    10月23日消息,近日,"全国住房公积金小程序"微信小程序正式上线.用户可通过小程序实时查询.掌握公积金的金额情况,一键办理"异地转移"业务,享受更便捷的公积金 ...

  3. 关于微信小程序正式上线的那些事儿

    期待许久的微信小程序正式于1月9日凌晨上线,用户只要将微信更新到最新版本(V6.5.3),即可通过扫描二维码,或搜索等方式体验微信小程序.体验微信小程序后,即可在微信「发现」菜单末尾出现诸如朋友圈各种 ...

  4. 微信小程序(PHP服务端)之仿淘票票,制作电影购票程序

    微信小程序(PHP服务端)之仿淘票票,制作购票程序 前言 一.业务流程 二.效果图 总结 前言 这学期对PHP进行了学习,就编程而言,和常用的java开发思路都大同小异,但是PHP的部署是真的方便,这 ...

  5. 微信小程序支付java服务端集成采坑总结

    先上个微信小程序支付官方文档地址: https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_7&index=8 重点看 ...

  6. 微信小程序初见+nodejs服务端 (一个简单的博客)

    推荐网址: 腾讯云快速开发(nodejs前后端):https://developers.weixin.qq.com/miniprogram/dev/qcloud/qcloud.html#%E5%AF% ...

  7. spring boot开发QQ音乐微信小程序(包含服务端源码)

    spring boot+spring mvc+spring整合开发QQ音乐微信小程序(含简单服务端) 项目描述: spring boot+spring mvc+spring代理请求QQ音乐接口获取数据 ...

  8. 韵达小程序服务器异常,微信小程序快递助手服务端API接入韵达快递返回9300501错误...

    后端使用Tomcat服务器,JDK1.8版本,以下为发送的接口,参数和返回信息,提示"XML报文转换异常",我将接口,参数用同样的方式发送请求,用本地java程序发送,却返回成功, ...

  9. 微信小程序获取云服务器数据,微信小程序云开发服务端数据库API 获取集合数据...

    Collection.get / Query.get 获取集合数据,或获取根据查询条件筛选后的集合数据. 如果没有指定 limit,则默认最多取 20 条记录. 如果没有指定 skip,则默认从第 0 ...

最新文章

  1. python until怎么用不了_为何你还不懂得如何使用Python协程
  2. mysql @value := 用法
  3. codematic2连接mysql失败_怎么连接oracle数据库
  4. Caused by: org.springframework.amqp.AmqpException: No method found for class [B
  5. isc-dhcp监听网口的实现步骤
  6. ActiveMQ在windows下启动失败解决方案
  7. 揭秘自编码器,一种捕捉数据最重要特征的神经网络(视频+代码)
  8. c语言存储类型重要吗,C语言储存类别(Storage Class)
  9. 【leecode】小练习(简单8题)
  10. Android自动化测试01-环境安装连接问题及解决
  11. HDU3785 寻找大富翁【优先队列】
  12. 彻底理解程序为什么会超时
  13. 曾经使用过的chart控件(mschart,XCL-Chart,vue-echart)
  14. linux开发板系统备份
  15. ceph的 cache tier实现分析
  16. 澳洲java待遇_2018年澳洲IT薪资一览,最新IT薪水Salary,给学IT的同学打一针鸡血...
  17. Windows下PuTTY远程连接Linux服务器并上传文件/更改默认端口号
  18. 还在花钱抢票?12306 已屏蔽60款抢票软件!
  19. python 抓取头条街拍图片
  20. Window系统下如何生成ssh key以及如何在码云中添加公钥

热门文章

  1. wstmart不错。可以用用
  2. 手机上如何使用Termux当终端,以及开启SSH服务的步骤
  3. 停止win10自动更新
  4. 移动宽带frp内网穿透访问家中网络(by quqi99)
  5. 【未完成】【甄选靶场】Vulnhub百个项目渗透——项目四十一:DEFCON Toronto-Galahad(图像深层分析,流量分析)
  6. 程序员必备的几款文档编辑器
  7. mv 命令批量移动文件夹
  8. SSE Intrinsics各函数介绍
  9. play Framework 配置
  10. php高洛峰_PHP 验证码   高洛峰 细说PHP