一 前言

微信小程序,相信大家早已熟知,它是一种无需下载安装即可使用的轻型应用,具有跨平台和接近Native App性能体验的优势。从开发模式上说,它是前后端分离的,微信小程序负责实现前端应用,后端服务可以使用任何你说熟知的开发语言,如PHP、NodeJs、Java、C#、Python等,因而,微信小程序的开发文档主要是围绕WXML、WXSS等前端框架、组件或样式布局进行讲解,几乎看不到后端技术的身影。本文主要介绍如何在腾讯云服务器上部署Python+Django实现的微信小程序后台服务,对整个部署过程和涉及的事件有所了解即可,无需关注具体细节。

二 部署前准备

部署前的准备工作比较耗时,可能这也是很多微信小程序个人开发者会感到头疼的地方…

1.      购买云主机

开发的微信小程序应用带后台服务的,要考虑购买云主机,可选服务提供商挺多的,如腾讯云、阿里云、百度云等,根据个人需要选购即可,腾讯云主机相对便宜(西南地区-成都,主机相对其他区域便宜一点);

2.      域名申请\解析\备案

A.  域名申请

购买域名,最好是云主机在哪里买,域名就在哪里买吧,也省了域名转入的事儿,比如主机、域名都在腾讯云购买;

B.  域名解析

购买的云主机会有一个公网IP,通过将域名与ip地址绑定,可以实现通过域名访问服务。如腾讯云主机域名解析配置方式为:

登录腾讯云控制台---> 进入域名页面--->在域名上点击[解析]--> 添加解析记录

C.  域名备案

这个最蛋疼!腾讯云提交备案信息,如个人信息、住址信息、×××信息、居住证信息、照片视频等材料;

这个最耗时!腾讯云审核1个工作日,管局审核理论上20个工作日左右(可能会快几天)

这个是必须的!微信小程序后台域名必须备案,没法绕过,看开发文档的明确说明:

3.      申请SSL证书\配置启用https访问

A. 腾讯云提供了ssl证书的免费申请,具体可以查看腾讯云相关文档,大致流程为:

登录腾讯云-->ssl证书管理-->申请证书(免费)-->等待审核(一个工作日内完成审核,审核结果将以短信、邮件及站内信的方式通知您。一般半个小时即可审核通过)

B. 配置启用https

证书审批结果会以短信通知,审批通过后,可以在控制台下载证书文件,且在apache中安装配置(记得配置后重启apache服务)

4.      配置小程序服务器域名

域名备案通过后,登录微信公众平台小程序,配置服务器域名,大致流程是:开发--开发设置-服务器域名-开始配置,填写备案的域名;

三 部署Apache+mod_wsgi+Django

经过前期的准备,已经有可以运行后台服务的主机和备案的域名,且支持https协议,接下来就需要将开发好的后台服务部署到云主机,以便为微信小程序提供后台API访问。

1.      Apache安装配置

我的腾讯云服务器使用的是windows 2k8 R2系统,在Apache官网下载对应的版本,解压,配置httpd.conf,使用类似httpd -k install -n "Apache2.4"的命令可以将apache注册成windows服务;

2.      安装mod_wsgi

下载与Python版本对应的mod_wsgi,使用pip install安装,并记录安装成功后出现的配置信息,以备后续httpd.conf配置;

3.      配置Django项目

部署Django项目,配置httpd.conf,重启apache服务,如果配置无异常,通过配置的域名应该可以正确获得后台响应数据,后台接口数据一般以json格式返回。

httpd.conf配置举例如下,配置时注意依据实际路径修改:

#安装wsgi模块后,mod_wsgi-express module-config命令输出的三行信息,直接复制过来
LoadFile C:/python36/python36.dll
LoadModule wsgi_module c:/users/administrator/.virtualenvs/example-qwbwsvwe/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win32.pyd
WSGIPythonHome c:/users/administrator/.virtualenvs/example-qwbwsvwe
#设置工程中的wsgi路径
WSGIScriptAlias / C:\Dev\example\webApp\webApp\wsgi.py
#设置工程路径
WSGIPythonPath C:\Dev\example\webApp
#设置wsgi路径
<Directory C:\Dev\example\webApp\webApp><Files wsgi.py>Require all granted</Files>
</Directory>
#设置静态文件路径
Alias /static C:\Dev\example\webApp\static
<Directory C:\Dev\example\webApp\static>  AllowOverride None  Options None  Require all granted
</Directory>

四 总结

如果开发的微信小程序需要后台服务支持,域名备案是一个耗时等待的过程,因而,可以提前发起备案申请;后台服务部署涉及的细节较多,都可以单独领出来写配置文档,但配置相对比较容易,另外,考虑后台服务器选择种类众多,全部写出来,篇幅居多,参考性可能也不大,所以,只列出大致流程,对整个部署过程和涉及的事件有所了解即可,实际应用中还要具体问题具体分析。

转载于:https://blog.51cto.com/2681882/2390137

基于腾讯云服务器部署微信小程序后台服务(Python+Django)相关推荐

  1. 视频教程-雪狐CentOS7云服务器部署微信小程序商城系统(宝塔面板)-微信开发

    雪狐CentOS7云服务器部署微信小程序商城系统(宝塔面板) 1.多年开发和授课经验. 2.精通PHP.前端.Android.iOS等开发技术. 3.希望能将自己所学教给学生. 刘安良 ¥12.00 ...

  2. 微信小程序后台服务怎么搭建

    小程序是目前最大的流量风口,与APP不同的是小程序的便捷,也就是小程序的核心竞争力与理念,不过小程序和APP的相同点都是属于应用,因此需要后台服务的支持,微信小程序的后台搭建常用到腾讯云,包括云数据库 ...

  3. filezilla 设置服务器_java项目部署到linux服务器,微信小程序后台springboot项目部署到腾讯云服务器(图文详解)...

    前面给大家讲了一个点餐系统的开发,包括java点餐后台和微信点餐小程序.可是都是教大家如何在本地把项目跑起来.今天就来教大家如何把这个点餐系统部署到服务器,实现商用. 传送门 点餐系统的开发,java ...

  4. springboot 获取登录浏览器_java项目部署到linux服务器,微信小程序后台springboot项目部署到云服务器(图文详解)...

    前面给大家讲了一个点餐系统的开发,包括java点餐后台和微信点餐小程序.可是都是教大家如何在本地把项目跑起来.今天就来教大家如何把这个点餐系统部署到服务器,实现商用. 传送门 点餐系统的开发,java ...

  5. 小程序 腾讯云 php,使用微信小程序和腾讯云实现直播功能

    不久前微信小程序开放了直播接口,正好阿北的服务器在腾讯云上,就用腾讯云的直播服务实战了一下,以下为实战过程,希望对你有用. 我是通过obs实现推流,然后用小程序进行直播播放,也就是PC->小程序 ...

  6. MTA:腾讯云数据分析(微信小程序)

    最近老大叫我去看下统计这一块,看了看,既然是微信小程序的,那么首选还是腾讯好了.然后就整理了下面这个文档: 先说说有哪些个数据是我们需要的: appid:这个可以在后台的应用管理看 event id: ...

  7. EasyNVR结合阿里云/腾讯云CDN实现微信/小程序直播的方案

    背景需求: 许多客户有这样的需求:微信公众号做为平台来对摄像机进行直播:可以让用户随时随地打开公共号就可以观看:保证画面的流畅性:保证视频的并发访问量等. 问题分析: 虽然需求看似很简单,其实真正实现 ...

  8. 微信小程序登录服务器失败,微信小程序后台登录一直失败

    问题描述: 前端调用wx.login获取code后,将code传递给后台,后台进行登录操作,登录使用的是shiro框架.之前登录的时候一直都很有效,但是今天登录后,当前端再次调用其他接口时,一直报40 ...

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

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

最新文章

  1. SAP MM 采购申请中的物料组字段改成Optional
  2. Expression Blend实例动画-大坝水位升高演示
  3. 越努力越幸运,三年了!!!
  4. python中str和input_python中input()与raw_input()的区别分析
  5. Unity Text 插入超链接
  6. Android loopback(三)
  7. 获得PMP认证的过程及心路历程
  8. [读书笔记]密码文件总结
  9. 基于C语言的小游戏合集
  10. Python中tkinter模块的学习记录(一)
  11. js下载文件 阿星小栈
  12. ps 利用马赛克滤镜制作方格背景
  13. python日本 老龄化分析_即将读研,求问前辈有什么研究生安利的软件 APP 或者阅读文献用的等一系列提高效率的东西吗!?...
  14. win7 计算机不显示收藏夹,在WIN7中隐藏“库”和“收藏夹”
  15. 412.FizzBuzz
  16. 视频剪辑工具:剪映专业版 for Mac
  17. python爬贴吧图片下载到本地
  18. 看这里,你要的快速、批量PDF加水印工具!
  19. JPEG图像编码解码
  20. 谷歌眼镜开发Mirror API之快速启动

热门文章

  1. 计算机二级基础知识微盘,计算机二级C++基础知识(整理版).pdf
  2. 74hc595级联c语言程序,74hc595级联程序范例
  3. oracle 二进制与运算,Oracle怎么操作进行二进制的比对
  4. object string java_java实现Object转String的4种方法小结
  5. python中注释的作用_Python函数添加注释的好处
  6. android:layout_margintop=3dip,南昌航空大学android期末复习资料之 编程题.pdf
  7. java线程怎么用_Java多线程基本使用
  8. SpringBoot实战(十二):集成 Spring Boot Admin 监控
  9. 来自1976,Hinton写的第一篇论文火了:胶囊网络,是40年前的胶囊?
  10. CB Insights发布AI行业25大趋势:中国人脸识别、无人商店发展迅速