微信小程序 Django 阿里云 https windows2012 runserver启动经验
一、前言
最近在开发一个数据采集系统,前端用的是微信小程序,后端是用python语言,基于django框架开发的。由于微信小程序上线需要使用https的URL,因此需要配置https的证书,过程中也找了不少的博客看,但都与我的情况有点出入。下面把我的配置环境以及具体方法列出来,与朋友们分享。
环境说明:
数据库:Mysql5.7
服务器:阿里云轻量应用型
系统:windows2012
二、django部署到阿里云
第一步,连接服务器
win + R,mstsc
回车,打开远程连接窗口,输入阿里云的公网ip地址,点击连接,即可连接到服务器(当然,如果是第一次连接服务器,还需要进行一番配置,不过这个简单,这里不具体描述了)
第二步,部署到服务器
首先,把这个项目的文件夹复制到服务器上,由于我的服务器空间就是一个C盘,我直接放到了桌面上。
其次,在项目的settings中配置数据库信息(默认已经在服务器上安装了Mysql5.7)
再然后,在项目的settings中的INSTALLED_APPS中加上’sslserver’。
此时,通过cmd,进入对应的虚拟环境,打开至项目目录,使用python manage.py runserver 0.0.0.0:端口号,即可启动服务器,可以用http的方式来访问。
三,配置https
第一步,申请购买一个阿里云域名,然后将阿里云域名跟公网IP绑定,并且对域名所有者进行认证
第二步,配置DNS解析
第三步,购买申请SSL证书
进入阿里云控制台,找到SSL证书(应用安全)
点击购买证书
选择免费的购买(个人学习目的建议购买免费的)
购买证书后进入证书管理平台
点击证书申请,填写申请信息,域名生成方式我选择自动DNS验证,CSR生成方式我选择系统生成
证书申请需要一定的时间,一般会比较快,一天内就好了,如下第四步,下载证书
这里,由于我没有使用Tomcat,Apache,Nginx,IIS这些东西,我是直接打开cmd窗口runserver的,因此,我下载的是 其 他
下载后解压,如下
将这两个文件.key和.pem复制到服务器上
如放在服务器桌面上新建的一个文件夹内
四、run起来
打开cmd窗口,进入对应的虚拟环境,进入项目目录
使用
python manage.py runsslserver --certificate 【pem文件存放的路径】+/XXX.pem --key 【key文件存放的路径】+/XXX.key 0.0.0.0:【你的端口号】
然后就可以用,https:公网IP:端口号,作为你的URL来访问了
这个时候,我们还没有用到我们的域名,这个事情,需要在阿里云上将域名备案,域名备案比较简单,个人域名也可以备案,只不过需要几天的审核
五、在微信小程序后台设置域名
如图,设置自己已经备案好的域名即可
注意的是,需要把端口号也写上
六、成功运行
在微信小程序的设置中,“不校验合法域名” 不要勾选,进行测试
能够成功向服务器发起请求
说明配置成功,可以使用