Python Flask程序部署到腾讯云服务器(Ubuntu 18.04)作为微信小程序后台-(二)部署Flask到云服务器
【Python Flask程序部署到腾讯云服务器(Ubuntu 18.04)作为微信小程序后台】系列文章
最近因为课程学习需要尝试把Python Flask程序部署到腾讯云的服务器上作为微信小程序的后台服务器。折腾了好几天,重装了几次系统,从 Windows Server 到 CentOS 再到 Ubuntu 。最后在DigitalOcean的Community才找到了合适的教程,本文章用来记录从开始到部署成功作为小程序后台的过程,希望能给其他刚开始尝试的小白提供一些帮助。
开始前提
- 一台腾讯云服务器(现在是啥系统不重要,可以免费重装);
- 微信公众平台小程序账号;
- 一定的Python、JavaScript、HTML基础。
三、部署flask测试程序
在腾讯云-实例-控制台将云服务器重装系统为 Ubuntu Server 18.04.1 LTS 64位,登录服务器。
在上面的界面输入执行以下命令:
1.更新软件列表
sudo apt update
2.安装软件包
sudo apt install python3-pip python3-dev build-essential libssl-dev libffi-dev python3-setuptools
输入 y ,回车。一大串滚动过后回到命令行,表示安装成功。(60.5MB文件大小并不一定,与你当前已经安装的程序有关系)
3.安装python3-venv软件包
sudo apt install python3-venv
与我们在开发flask程序时在本地安装的虚拟环境类似。
4.创建程序父目录
mkdir ~/myproject cd ~/myproject
创建并转到创建好的目录中,发现
$前面的路径发生了变化:
5.创建虚拟环境
python3.6 -m venv myprojectenv
6.启用虚拟环境
source myprojectenv/bin/activate
你会发现命令行最前面增加了
(myprojectenv),表示我们已经进入了刚刚创建的虚拟环境。
7.在服务器上安装flask环境
pip install wheel pip install uwsgi flask
8.上传flask测试程序到服务器
由于我是macOS的系统,所以用FileZilla远程连接服务器通过SFPT(sshFTP)上传文件。
(1)放通入站端口
由于腾讯云在没有安全规则的情况下是默认关闭所有端口访问的,所以我们需要新建安全规则放通我们使用SFTP需要的22号端口。
在服务器的控制台中选择 “安全组” :
“新建”-“放通22,80,443,3389端口和ICMP协议”-“确定”:
“修改规则”:
“关联实例”:
“新增关联”-“选择实例”-“确认”:
(2)建立SFTP连接
进入站点管理器:
建立新站点:
协议选择
SFTP,主机填写服务器的
公网IP,登录类型选择
正常,用户名为
ubuntu,然后输入之前设置的账户密码即可。
连接成功后就能够看到我们刚刚创建的目录:
(3)上传flask程序并测试
刚刚说得有点远,言归正传,我们要将一开始在本地写好的flask测试程序上传到云服务器。
将测试的flask程序的py文件放到myproject文件夹下:
使用以下命令可以在云服务器中看到我们刚刚上传的文件和虚拟环境的文件夹:
ls -a
使用以下命令放通5000端口:
sudo ufw allow 5000
结果如下:
使用以下命令运行flask程序:
python myproject.py
结果如下:
然后你可以使用本地浏览器访问
http://your_server_ip:5000,结果如下:
如果无法进入
:5000端口页面,有可能的原因是腾讯云服务器安全规则没有放通,在腾讯云的控制台选择服务器绑定的安全组添加规则即可:
前面的
0.0.0.0/0和
::/0表示准许所有ipv4和ipv6地址访问,后面放通的协议端口填写
TCP:5000,然后点击完成,添加好之后就可以访问得到上面的结果了。
测试完成后,在运行界面按下
control+C即可关闭服务器,回到命令行界面:
9.创建WSGI接入点
在本地创建
wsgi.py文件,在文件中粘贴以下内容,其中第一行的
myproject是之前flask测试程序的文件名,
app是之前flask测试程序中定义的Flask程序变量名:
from myproject import app if __name__ == "__main__": app.run()
在本地创建好此py文件后,使用FileZilla将其发送到
/myproject文件夹下,可以在服务器中看到:
10.测试WSGI接入点
运行命令:
uwsgi --socket 0.0.0.0:5000 --protocol=http -w wsgi:app
结果如下:
访问
ip:5000,可以进入以下界面,表明uWSGI服务没有问题:
每一次访问都会在服务器端显示访问结果,
200表示访问成功:
测试完成后,在运行界面按下
control+C即可关闭服务器,回到命令行界面。
我们现在已经在虚拟环境中完成了flask程序在云服务器中的部署,使用
deactivate命令关闭虚拟环境,继续配置增强服务器性能。
【Python Flask程序部署到腾讯云服务器(Ubuntu 18.04)作为微信小程序后台】系列文章
本文参考文章:How To Serve Flask Applications with uWSGI and Nginx on Ubuntu 18.04
- 点赞
- 收藏
- 分享
- 文章举报
- Python Flask程序部署到腾讯云服务器(Ubuntu 18.04)作为微信小程序后台-(三)云服务器配置
- 基于腾讯云服务器部署微信小程序后台服务(Python+Django)
- 基于腾讯云服务器部署微信小程序后台服务(Python+Django)
- 基于腾讯云服务器部署微信小程序后台服务(Python+Django)
- Python Web程序部署到Ubuntu服务器上的方法
- Wafer2小程序解决方案 自行部署DEMO使用阿里云服务器搭建微信小程序后台环境 微信小程序开发模板消息
- PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
- 将你的Python Web程序部署到Ubuntu服务器上
- 【云计算导论】实验二 使用Pyenv安装Python、编写第一个Python Flask Web程序并部署到云服务器等
- 微信小程序详细图文教程-10分钟完成微信小程序开发部署发布(3元获取腾讯云服务器带小程序支持系统)
- 用Python的Flask框架写微信小程序及其管理网页后台(准备篇)
- 用Python的Flask框架写微信小程序及其管理网页后台(实现篇)
- 用Python的Flask框架写微信小程序及其管理网页后台(测试篇)
- Python Flask 搭建微信小程序后台详解
- 用Python的Flask框架写微信小程序及其管理网页后台(总结篇)
- 记录 python flask 与微信小程序交互
- 腾讯云ubuntu服务器部署与xshell访问
- 微信小程序开发之搭建腾讯云ubuntu开发环境PHP+MYSQL+APACHE2
- 最新Python Flask打造一个微信小程序点餐系统项目实战(完整)