微信小程序正式上线,服务端请求必须HTTPS
2017-09-22 11:51
746 查看
微信小程序自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方式访问您的站点,确认站点证书安装配置正确即可,其实没有想象的那么难。如果你使用的是其他服务器。
相关文章推荐
- 【微信裂变程序】不需公众号!免接口影视裂变系统正式上线!
- 微信小程序正式上线,再不看别说你会玩微信
- 微信小程序正式上线,APP真的可以卸载了?
- 小程序开发(1)-- 请求域名必须是https开头安装SSL证书
- windows2008 phpstudy https证书配置实现微信小程序wx.request发起的 HTTPS 请求。
- 过往记忆博客微信小程序正式上线
- 微信“功能直达”正式上线,小程序再建“流量池”
- Erdaicms旅游网站程序微信和手机端分销系统正式上线发布啦
- 为微信小程序配置服务端,升级网站为https
- http转https 和 微信小程序设置了合法请求域名,小程序一直提示不在合法域名列别中
- 微信小程序正式上线 可置于聊天窗口顶部
- 微信小程序正式上线
- 好用便宜的erdaicms旅游网站程序2017款新模版正式上线(PC+手机+微信)
- 微信小程序正式上线
- 微信小程序 HTTPS 请求,如何获取免费证书配置服务器
- 关于微信小程序正式上线的那些事儿
- 微信小程序https连接服务器请求经常失败,请求超时
- APP终结者来了?微信“小程序”正式上线!