微信小程序个人服务器搭建[通俗易懂]

微信小程序个人服务器搭建[通俗易懂]个人做微信小程序必须考虑到工作量和资金的问题,这篇文章总结出一套针对个人切实可行的方案。本文章重点在抛砖引玉,而不是对各种细节的详细描述。读者可以根据文中提到的各种关键词,查阅相关资料方案包括在Ubuntu上面使用flask建立web服务器 使用花生壳内网穿透 使用花生壳提供的带备案信息的域名 使用腾讯云提供的免费https证书 微信小程序网络连接的注意事项在Ubuntu上面使用…

大家好,又见面了,我是你们的朋友全栈君。

个人做微信小程序必须考虑到工作量和资金的问题,这篇文章总结出一套针对个人切实可行的方案。本文章重点在抛砖引玉,而不是对各种细节的详细描述。读者可以根据文中提到的各种关键词,查阅相关资料

方案包括

  1. 在Ubuntu上面使用flask建立web服务器
  2. 使用花生壳内网穿透
  3. 使用花生壳提供的带备案信息的域名
  4. 使用腾讯云提供的免费https证书
  5. 微信小程序网络连接的注意事项

在Ubuntu上面使用flask建立web服务器

后台可以用java,php等。但考虑到个人开发,这里选择python。因为python可以快速搭建带调试功能的开发环境,也是大多个人开发者最熟悉的语言。

开发环境使用pycharm的community版本,操作系统Ubuntu 16.06。

使用flask模块提供的http server功能,不用单独安装环境,和普通的python程序无区别。查看下面代码了解具体使用方法:

https://github.com/rabienrose/listening_training/blob/master/server/app.py

使用花生壳内网穿透

在初期研发阶段,使用远程的服务器不仅需要一定的费用,而且各种配置也添加的工作量。所以这里采用本地运行服务器程序,毕竟在本地操作要方便很多。

本地计算机一般只有内网ip,这里使用花生壳提供的内网穿透功能。具体原理是在本地运行一个后台程序,小程序和花生壳的服务器相互通行。也就是把后台程序运行的这台机器和一个花生壳提供的域名绑定在一起。外部访问这个域名的时候,就知道这是要访问后台程序所在的这台机器。

详情见:https://hsk.oray.com/

使用花生壳提供的带备案信息的域名

微信小程序和服务端的通行只能通过微信提供的wx.request这个函数。而这个函数内部会对访问的域名有所要求:

  1. 域名必须是有备案的
  2. 域名必须是https

域名备案一般需要几个星期的时间,而且步骤非常之多。虽然建议读者有空还是去做一个域名的备案,不过这里提出一个替代方案。

花生壳在做内网窜穿透的时候,同时需要申请一个域名。这个域名是花生壳备好案了的,比如我的域名是:

rabienrose.iicp.net:21070

而域名iicp.net是有备案信息的,个人的不同体现在二级域名rabienrose上。

另外如果自己有已经备好案的其他域名的话。可以通过CNAME把自己的域名转接到花生壳的这个域名上。这样就可以使用自己的域名做内网穿透了。不清楚的请自行了解:域名解析CNAME

如果要用自己的域名备案的话,推荐使用域名提供商提供的备案服务。我的域名是阿里云买的,所以就用的阿里云的备案服务。

使用腾讯云提供的免费https证书

https的CA认证才是最花钱的,一般一年要几千到几万元。笔者发现腾讯云提供了一个免费的认证服务。不了解https的请自行搜索:ssl认证。

https://cloud.tencent.com/document/product/400/8421

在验证域名所有权的时候,因为没有对花生壳域名的域名解析设置权限,所以只能采用文件验证这种方式:

https://cloud.tencent.com/document/product/400/4142

不过笔者没有亲自尝试过这种方式,也不确定一定能行。笔者因为自己又备好案的域名,所以用的手动DNS验证。

免费的https证书申请很快,基本一个小时内能通过申请。

申请完后,可以在管理界面中下载证书的文件。参照上面的代码,把证书文件设置到代码中即可。

微信小程序网络连接的注意事项

  1. 小程序对服务器域名的验证还是很严的。域名需要现在小程序后台中配置后才能使用,而且端口号和二级域名都要一致才行。域名没有备案时,在配置的时候就会提示错误。但是如果https CA证书不对时,只有在使用的时候才报错。
  2. 小程序的开发在微信提供的小程序开发工具中进行,工具中可以设置在开发版本不进行域名合法性检查。
  3. 微信小程序个人服务器搭建[通俗易懂]
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135121.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ZOJ 3826 Hierarchical Notation 模拟

    ZOJ 3826 Hierarchical Notation 模拟

    2022年1月2日
  • 2017中国程序员薪资生存现状调查报告结论_程序员的收入

    2017中国程序员薪资生存现状调查报告结论_程序员的收入程序员一直都是一个备受人们关注的群体。2014年,据IDC统计,全球约有1850万名程序员,中国占10%。随着近年全国互联网创业热潮的兴起,“互联网+”、“云计算”以及“智能硬件”等领域发展迅速,市场对程序员的需求更为旺盛。  由程序员客栈联合稀土掘金通过对北京、广东、浙江、上海等全国28个省、直辖市及特别行政区的10W+优秀程开发者进行了一次调查。调查报告里对程序员的年龄组成、性别比例、

    2022年10月11日
  • 网易邮箱问候语

    网易邮箱问候语

    2021年11月17日
  • python画qq图_python绘制散点图

    python画qq图_python绘制散点图qq图有两个作用:1、检验一组数据是否服从某一分布。2、检验两个分布是否服从同一分布。qq图全称是quantile-quantileplot,从名称中可以了解到是和分位数相关的图。由于最近在做数据分析时用到了,然而看了一些博客,要么是qq图讲解的比较详尽但是没有使用Python;要么是使用Python语言但是没有讲清楚原理。基于此,想写一篇博客尽量讲清楚原理并且用Python实现出来。qq图原理…

    2022年8月10日
  • SQL Server数据库分区分表

    SQL Server数据库分区分表当一个数据表的数据量达到千万级别以后,每次查询都需要消耗大量的时间,所以当表数据量达到一定量级后我们需要对数据表水平切割。水平分区分表就是把逻辑上的一个表,在物理上按照你指定的规则分放到不同的文件里,把一个大的数据文件拆分为多个小文件,还可以把这些小文件放在不同的磁盘下。这样把一个大的文件拆分成多个小文件,便于我们对数据的管理。下面我们来创建表分区代码创建分区表添加文件组代码格式:…

    2022年6月5日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号