源码地址:https://github.com/Tinywan/PHP_Experience


主要内容:
1. SSL免费证书申请步骤
2. Nginx HTTPS 配置
3. TLS 1.2 升级过程

微信小程序要求使用 https 发送请求,那么Web服务器就要配置成支持 https,需要先申请SSL证书

小程序也要求 TLS(传输层安全协议)的版本至少为 1.2,在配置好 https之后,如果 TLS 的版本较低,就涉及到升级问题

所以 Server端环境配置的主要步骤:

  1. 申请 SSL 证书

  2. 配置web服务器支持https(我使用的是nginx)

  3. 升级到 TLS 1.2

SSL证书申请

https 需要使用SSL证书,这个证书的价格为每年三五千到一万多,对于小团队或者是想熟悉一下小程序的用户来说,这个价格还是比较高的,这种情况可以选择免费证书,另外,也可以考虑一下云服务,例如 野狗LeanCloud 这些成熟的服务平台,都支持 https,如果这些平台能满足自己的业务需求,就省掉了很多麻烦

免费证书:阿里云上的 赛门铁克 免费型DV SSL

申请过程

wanwang.aliyun.com

登录控制台,点击左侧菜单中的 安全 -> 证书服务,这个页面中右上角有 购买证书 按钮,点击进入购买页,选择免费型DV SSL,购买

订单金额为0元,只是走一遍购买流程,完成后回到证书服务页面,可以在列表中看到一个证书

首先进行 “补全” 操作,填写自己的域名和基本信息

之后 “补全” 连接会变为 “进度”,点击后根据提示操作,主要是验证自己的服务器,我选的是文件验证,下载一个文件上传到自己服务器,等待验证

验证没问题后,大概10分钟左右就可以下载SSL证书了

Nginx HTTPS 配置

证书上传到nginx目录下,例如

/usr/local/nginx/cert

修改 conf/nginx.conf

配置 HTTPS server 块儿,添加SSL配置

# HTTPS server
#
server {listen       443 ssl;server_name  localhost;......ssl on;ssl_certificate   /usr/local/nginx/cert/213994146300992.pem;ssl_certificate_key  /usr/local/nginx/cert/213994146300992.key;ssl_session_timeout 5m;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;location / {root   html;index  index.html index.htm;}......}

重新加载配置文件,浏览器中使用 https 方式访问自己的域名,看是否可以正常访问

升级到 TLS 1.2

查看 TLS 版本

访问 https url 后,地址栏前面会有一个绿色小锁图标,点击它可以查看到 TLS 版本信息

如果没有达到 1.2 就需要升级

下面的操作环境为 centos linux

1)查看 openssl 版本

openssl version -a  

1.0.2以下的版本就要升级,之前的版本官方都已经停止维护

2)升级 openssl

到官网下载新版

https://www.openssl.org/source/

例如下载到 /usr/local

升级

cd /usr/local
tar zxvf openssl-1.0.2j.tar.gz
cd openssl-1.0.2j
./config --prefix=/usr/local/openssl
make && make install
mv /usr/bin/openssl \/usr/bin/openssl.OFF
mv /usr/include/openssl \/usr/include/openssl.OFF
ln -s \/usr/local/openssl/bin/openssl \/usr/bin/openssl
ln -s \/usr/local/openssl/include/openssl \/usr/include/openssl
echo "/usr/local/openssl/lib"\>>/etc/ld.so.conf
ldconfig -v   

验证

openssl version -a  

3)重新编译 nginx

升级OpenSSL之后,nginx需要重新编译,否则TLS还是旧版本的

下面是基本安装,如您需求更多,请自行调整

用到的软件

  • openssl

前面已经安装完了

  • pcre

下载地址

http://www.pcre.org/

例如下载到 /usr/local

cd /usr/local
tar -zxv -f pcre-8.39.tar.gz
cd pcre-8.39
./configure --prefix=/usr/local/pcre/
make && make install

  • zlib

下载地址

http://www.zlib.net/

例如下载到 /usr/local

cd /usr/local
tar -zxv -f zlib-1.2.10.tar.gz
cd zlib-1.2.10
./configure --prefix=/usr/local/zlib/
make && make install

编译nginx

tar -zxvf nginx-1.10.2.tar.gz
cd nginx-1.10.2./configure \
--user=用户 \
--group=组 \
--prefix=/usr/local/nginx \
--with-http_ssl_module \
--with-openssl=/usr/local/openssl-1.0.2j \
--with-pcre=/usr/local/pcre-8.39 \
--with-zlib=/usr/local/zlib-1.2.10 \
--with-http_stub_status_module \
--with-threadsmake && make install

编译完成后,记得把修改配置文件,添加好 SSL 的相关信息

然后启动nginx,访问 https url 再次验证 TSL 版本

小结

经过这些步骤,微信小程序就可以和后端正常沟通了

参考地址:http://mp.weixin.qq.com/s?__biz=MzA4Nzc4MjI4MQ==&mid=2652402451&idx=1&sn=56e3122d6c8774ba457d2ced49c8321a&chksm=8bd8f5f5bcaf7ce3e4b51336e7e7debbaad5c6e02954982756ed0da0572127b61d8754f6cb79&mpshare=1&scene=23&srcid=0110JlMJP90O3osLzHgO3onE#rd

转载于:https://www.cnblogs.com/tinywan/p/6268076.html

微信小程序Server端环境配置相关推荐

  1. 阿里云服务器上搭建微信小程序服务端环境。

    无论是搭建个人博客空间也好,微信小程序也罢,搭建环境必需的两点:云服务器.域名,下面一步步给搭建演示如果在一台阿里云服务器上搭建微信小程序服务端环境. 1.云服务器准备:可在阿里云购买ECS服务器   ...

  2. [物联网] - [STM32/51|JavaWeb|微信小程序] - 2.开发环境配置

    注意 单片机方面首先以STM32F407为主,故在与51对接前将不赘述51开发环境配置部分.又因仅单片机开发部分环境配置最为麻烦,故此处仅介绍单片机部分开发环境配置.本系列默认读者拥有最基础的Java ...

  3. 微信小程序之--开发环境配置

    小程序开发初体验 ok,上一篇文章讲了小程序开发的前期准备工作(你得有个账号),这篇文章就告诉你这个账号的必要性. 书接上文,默认你已经有一个小程序账号了(没有的同学出门左转).开发小程序必然要有个开 ...

  4. java计算机毕业设计基于安卓Android/微信小程序的电脑组装机配置商城APP

    项目介绍 网络的广泛应用给生活带来了十分的便利.所以把组装机配置商城管理与现在网络相结合,利用java技术建设组装机配置商城app,实现组装机配置的信息化.则对于进一步提高组装机配置商城管理发展,丰富 ...

  5. 微信小程序服务端开发遇到的一些坑

    微信小程序服务端开发遇到的一些坑 开发环境 问题集合 小程序不支持基于进入客服事件推送消息 小程序不支持永久素材 RestTemplate无法解析上传图片素材的返回 tips 其他小问题 开发环境 基 ...

  6. 微信小程序开发教程!博卡君第二弹【微信小程序项目结构以及配置】

    前面我们转了博卡君通宵吐血赶稿的微信小程序开发教程,当时只更新了两章,现在接着发布第三章:微信小程序项目结构以及配置,第四章:微信小程序首页面开发,以下是微信小程序教程 找到创建的 demo 文件夹, ...

  7. ios 上传图片失败 小程序_微信小程序ios端 使用ajaxSubmit上传图片失败,android没问题...

    微信小程序ios端 使用ajaxSubmit上传图片失败,android没问题 微信小程序开发上传图片,使用ajaxsubmit,post请求,form设置multipart/form-data, a ...

  8. TP6 微信小程序消息推送配置Token校验失败200302

    ThinkPHP6 微信小程序消息推送配置时报错: {"ret":200302,"err_msg":"verify token fail"} ...

  9. 关闭微信小程序电脑端的位置定位

    关闭微信小程序电脑端的位置定位 关闭微信小程序电脑端的位置定位 1.使用fiddler获取微信小程序获取定位的网址 2.在host文件中将其禁止 3.删除微信小程序的缓存 3.再启动微信小程序即可 关 ...

最新文章

  1. EWS 通过SubscribeToPullNotifications订阅Exchange新邮件提醒
  2. python快速排序算法详细图解_Python实现桶排序与快速排序算法结合应用示例
  3. 【并发那些事】可见性问题的万恶之源
  4. 牛客假日团队赛5 K 金币馅饼 (DP 基础题)
  5. php用mssql还是用pdo,php使用pdo连接mssql server数据库实例
  6. 报告PPT|Python网络程序设计教学要点与案例分享(含音频)
  7. ORA-00257归档日志写满的解决方法 - xwdreamer - 博客园
  8. mysql提取前两个数据_各种数据库提取表的前几条记录的方法
  9. 吴军-《智能时代》-简介
  10. 系统批量运维管理器Fabric详解
  11. usb驱动错误导致的键盘鼠标失灵
  12. 【20220627】【信号处理】自相关函数的定义、计算方法及应用
  13. 【历史上的今天】7 月 14 日:MP3 诞生日;系统动力学的开创者诞生;正面战胜 IBM 的计算机公司
  14. Python爬虫-QQ音乐下载(详解)
  15. linux(安装在虚拟机)读取U盘
  16. MAC装win10 清理临时文件
  17. 蔬菜干行业调研报告 - 市场现状分析与发展前景预测
  18. 学习笔记 | Ch18 使用视图 view
  19. 监控系统cat安装和配置demo ubuntu 14.04
  20. C语言基础——数据储存

热门文章

  1. PHP probuf详细步骤_【转】protobuffer php使用
  2. 在Ubuntu 14.04平台上利用Intel的GPU实现硬件加速--基于VAAPI
  3. idea无法创建class
  4. 【zookeeper】zookeeper 启动 源码解读
  5. 【linux】Grok Debugger本地安装过程
  6. 【Spring】No suitable HttpMessageConverter repsonse type
  7. 【Flink】运行Flink 1.6.2 程序偶然报错 Premature end of GET request
  8. Spring :Spring AOP 中的一些术语
  9. 10-windows下的Orcale报错ORA-01031: 权限不足
  10. 大数据面试-06-大数据工程师面试题