本篇文章主要讲述3个方面的内容,如下:

1、SSL证书的获取

2、服务器 Nginx SSL 证书的配置。

3、如何兼容80端口和443端口以及为什么要同时兼容这两个端口。

1、SSL证书的获取

https 是微信小程序官方规定的,必须实现服务器的https 访问。那么就涉及到SSL证书了。目前市场上有好多专门的服务器在做SSL服务,SSL也根据不同的证书标准分为了不同的等级,当然根据不同的服务标准,收费的标准也是不一样的。我这里介绍几个可以免费申请SSL证书的平台。 腾讯云平台 、阿里云平台等。这些都是可以免费申请SSL的。

腾讯云 SSL证书免费获取说明URL https://jingyan.baidu.com/article/c14654138cfd930bfdfc4c10.html

2、服务器 Nginx SSL 证书的配置

直接上代码,看如下Nginx.conf 代码片段

server {

listen 443 ssl;

ssl on;

ssl_certificate_key /usr/local/ssl/2_www.xxxxxx.com.key;

ssl_session_cache shared:SSL:1m;

ssl_session_timeout 5m;

#charset koi8-r;

location / {

root /var/www/pcms;

index index.html index.htm index.php;

}

#error_page 404 /404.html;

其中 ssl_certificate 和 ssl_certificate_key 就是我们在云平台上免费得到的两个证书,分别配置好就可以了。

3、如何兼容80端口和443端口以及为什么要同时兼容这两个端口

通过第2步Nginx 的配置且重启后,就可以进行https 访问了。但是又一个问题出现了。就是我们之前的网站是 http 访问的。里面的资源,比方说已经有的图片存储路径,都是http访问的。这样配置后,发现好多之前的图片访问不了了。所以我们在这里,在 443 的基础上,还需要同时兼容原来的80端口,实现https 和 http 都可以正常访问才可以。配置两个端口同时兼容,有两种方法,方法一是可以通过 rewrite 配置,使http 访问目标网站的链接,自动转换成 https 来访问。这样可以解决问题。我这里说下第二种方法,通过Nginx 配置来实现,如下:

server {

listen 80;

listen 443 ssl;

# ssl on;

ssl_certificate_key /usr/local/ssl/2_www.xxxxxx.com.key;

ssl_session_cache shared:SSL:1m;

ssl_session_timeout 5m;

#charset koi8-r;

location / {

root /var/www/pcms;

index index.html index.htm index.php;

}

#error_page 404 /404.html;

需要特别注意的是: ssl on;必须注释掉。

通过以上的3个步骤,基本上你的https 就配置好了。可以正常使用了。

微信小程序开发之https服务器搭建三步曲的更多相关文章

  1. 微信小程序开发之https从无到有

    本篇不讲什么是https,什么是SSL,什么是nginx 想了解这些的请绕道,相信有很多优秀的文章会告诉你. 本篇要讲的在最短的时间内,让你的网站从http升级到https. 开始教程前再说一句:ht ...

  2. 微信小程序接入,https服务器搭建和调试

    在进行小程序开发时候,调试时候,希望在本地搭建一个https环境. 准备条件: 1.公网主机(阿里云或者腾讯云主机) 2外网访问工具natapp 步骤: 1.在主机上安装nginx(nginx转发到n ...

  3. 微信小程序开发之picker选择器组件用法

    picker组件时一个从底部弹起的可滚动的选择器(嵌入页面滚动器组件picker-view查看https://mp.weixin.qq.com/debug/wxadoc/dev/component/p ...

  4. 微信小程序开发之formId使用(模板消息)

    基于微信小程序的模板消息:基于微信的通知渠道,我们为开发者提供了可以高效触达用户的模板消息能力,以便实现服务的闭环并提供更佳的体验.模板推送位置:服务通知模板下发条件:用户本人在微信体系内与页面有交互 ...

  5. 微信小程序开发之picker

    一.绑定简单数组 通过bindChange控制index,使得当前选择值发生改变 示例1 data: { Data: ['A','B'], Index: 0, }, <picker class= ...

  6. 微信小程序开发之scroll-view

    本文主要介绍通过scroll-view实现回至顶部,如下效果 一.页面代码 顶部的工具栏放一个查找按钮,滚动区域实现分页,目的就是为了点击上一页\下一页时,自动回到顶部. scroll-view必须指 ...

  7. 微信小程序开发之http到https的转化

    小程序从公布到现在已经过去好几个月了,本来从小程序发布出来就准备抱着微信的大腿进行一波小程序开发的,但是由于公司项目小程序暂时不支持,也就只能一直搁浅.过年过来偶然和朋友谈起小程序,觉的工作再忙也得找 ...

  8. 微信小程序开发之IOS/Android兼容坑(持续更新)

    一.时间转换问题: 这不只是小程序上面的问题是ios系统 都有这个问题就是new  Date("2017-06-16") 在IOS会出现NAN的情况所以对于时间转换需要另行封装,解 ...

  9. 微信小程序开发之tab导航栏

    实现功能: 点击不同的tab导航,筛选数据 UI:   js: data:{ navbar: ['半月维保', '季度维保', '半年维保',"年度维保"],    //count ...

随机推荐

  1. 树的重心(DFS)

    ;vector< ; i < v[node].size() ; i++){ , ; i <= n- ; i++){ cin >> a >> b; v[a].p ...

  2. fedora 25重新安装引导

    引导区被其他系统给覆盖了,重新安装引导 grub2-install /dev/sdb GRUB_SAVEDEFAULT=true BIOS grub2-mkconfig -o /boot/grub2/ ...

  3. wrong mechandise category

    Issue: cannot open masterdata for this two UPCs since the error below is displayed, but I checked an ...

  4. HTML CSS的中英文对照

    python 大蟒蛇 downloads 下载 install 安装 customize 自定义 path 环境变量:路径 optional 可选的 feature 特性特点 documentatio ...

  5. Cobalt Strike特征修改

    一.Teamserver模块端口信息 vim teamserver修改Cobalt Strike默认服务端50500端口为其他任意端口 二.SSL默认证书信息 Cobalt Strike默认SSL证书 ...

  6. word2vec 原理浅析 及高效训练方法

    1. https://www.cnblogs.com/cymx66688/p/11185824.html (word2vec中的CBOW 和skip-gram 模型 浅析) 2. https://ww ...

  7. 【扯淡篇】CTSC/APIO/SDOI R2时在干什么?有没有空?可以来做分母吗?

    注意: 我比较弱, 并没有办法把外链bgm搞成https, 所以大家可以选择"加载不安全的脚本"或者把https改成http以获得更好的阅读体验! 据说, 退役了要写写回忆录. 但 ...

  8. 【Luogu】【关卡2-10】分治算法(2017年10月)

    任务说明:将大问题拆分为小问题,分而治之,各个击破,然后在合并回来. 取余运算||快速幂 幂次方 逆序对 南蛮图腾

  9. 浅谈异步上传插件 jquery-file-upload插件

    当我们需要异步上传文件的时候,我们倾向于在网上查找相关的JQuery插件,jquery-file-upload就是我们经常看到的,但是他的主页是英文的,对于我们这些英语比较差的同学来说,简直就是... ...

  10. loj2573[TJOI2018]数字计算

    题意:操作1:x=x*m,输出x%mod.2.x/=map[m].m即第m次操作,保证该次操作为1操作,并且每个操作最多只会被删一次.q<=1e5. 线段树维护操作信息的乘积,删除把对应位置的权 ...