宝塔面板部署Flask项目教程(最新版)

本教程适用于最新版的宝塔!!!
本教程适用于最新版的宝塔!!!
本教程适用于最新版的宝塔!!!

1 准备

1.1 依赖文件

在你的项目根目录下生成一个依赖文件,执行命令如下

pip freeze > requirements.txt

在这里插入图片描述

1.2 项目打包

将你的项目文件打包,方便上传,我这里演示,就一个Hello world ,没打包的必要了,全部代码如下:

from flask import Flaskapp = Flask(__name__)@app.route('/')
def hello_world():return 'Hello, World!'if __name__ == '__main__':app.run(debug=True)

在这里插入图片描述

1.3 宝塔python环境

给你的宝塔装一个python环境,版本和你本地python保持一致,或者更高就行
在这里插入图片描述

2 部署

2.1 上传文件

一切准备就绪,先在宝塔上创建一个文件夹,我一般创建的都是网站的名字,然后给文件上传到这里面
在这里插入图片描述
上传后的效果
在这里插入图片描述

2.2 创建python项目

项目端口号,自定义,后续要放行的,其他的路径就是对应文件的地址
在这里插入图片描述

2.3 放行端口

例如我写的12000端口,需要在宝塔这边放行,以及服务器运营商那边放行

①宝塔侧放行端口
python项目创建的时候,勾选放行端口,宝塔会自动添加,如果没有勾选,自己手动加一下就行
在这里插入图片描述

②服务器商放行端口
以腾讯云为例,添加一条12000的就行
在这里插入图片描述

2.4 简单测试

如果你的项目运行成功,这个时候通过ip+port就可以访问了,比如我的。完全不需要额外的代理设置
在这里插入图片描述

3 域名绑定

通过IP访问肯定是不稳妥的,不好记。如果你就想用IP访问,那么到此可以结束了。

3.1 域名绑定

下面开始域名绑定,将你要绑定的域名添加进去

举例子

想通过 demo.noo.cool 访问,那就直接填 demo.noo.cool
想通过 demo.noo.cool:8888访问,那就填 demo.noo.cool:8888

在这里插入图片描述

3.2 外网映射

在这里插入图片描述

3.3 域名解析

以腾讯云为例,腾讯云后台将域名解析到你的服务器
在这里插入图片描述

4.1 测试域名

一切都搞定后,就可以通过域名访问。
PS:这一步存在大坑!!!如果你的服务器是国内的,你的域名必须备案,否则无法访问。
在这里插入图片描述

4.2 关于SSL

直接在宝塔上填写,填写之后,你就可以通过https访问你的项目了
在这里插入图片描述

结束语

OK,本次教程到此结束,之前在网上看教程修改ng配置,感觉十分繁琐,还是我这种比较简单,适用于最新版的宝塔(教程中使用的是宝塔免费版8.2.0)。租的一个月的小鸡子,要到期了,拜了个拜~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/44386.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

美业收银系统怎么选?哪些功能实用?美业门店管理系统|拓客系统

选择美业会员系统时,你可以考虑以下几个方面的功能来确定哪些对你最实用: 1.会员管理: 系统应该能够轻松管理会员资料、积分、消费记录等信息,以便更好地了解客户需求并提供个性化服务。 2.促销与营销工具: 包括发…

Perl中追踪文件脉动:文件系统事件通知机制全解析

📡 Perl中追踪文件脉动:文件系统事件通知机制全解析 在Perl编程中,文件系统事件通知机制允许程序响应文件或目录的变化,例如文件的创建、删除、修改等。这种机制对于实现如文件监控、数据同步、自动化任务等应用至关重要。本文将…

电商开通云账户分账系统实现功能场景

什么是虚拟银行账户: 银行虚拟户也称为银行虚拟公户,是指企业或机构在银行开设的一种特殊类型的银行账户。它与普通银行账户不同,虚拟公户通常不涉及实际的资金流动,而主要用于管理和监控资金流向,以及实现特定的业务和财务目标。…

vue3项目安装和使用element-plus

第一步:安装 npm install element-plus --save 第二步:在main.js文件夹上引入 import { createApp } from vue import ./style.css import ElementPlus from element-plus import element-plus/dist/index.css import App from ./App.vueconst app c…

3D云渲染工具对决:Maya与Blender的性能和功能深度比较

3D建模和动画制作已成为数字领域不可或缺的一环,无论是在影视特效的震撼场面,还是在游戏角色的生动表现,3D技术都扮演着至关重要的角色。而在这一领域,Maya和Blender这两款软件,以其强大的功能和广泛的应用&#xff0c…

【JavaEE】进程

目录 一.冯诺依曼体系结构 二.CPU的核心概念 核心数 频率(Clock Speed 或时钟频率) 如何选择合适的CPU 三.指令的执行 1.什么是指令 1.取指令 2.解析指令 3.执行指令 4.访问内存(Memory): 5.写回结果(Write…

视频解码故障案例两则

案例1 绿边 故障分析: 这个能明显看到视频上方出现绿色半透明边带。这说明Y数据正常。UV数据不正常。 它显然与视频帧的垂直分辨率设置有关。 UV数据和Y数据是连续放置的,如果上方出现彩色数据失调,说明这部分数据实际仍然是Y数据。也就是…

为什么我在go语言里从前端接收到的参数是数字28546.123456,但是我不能使用float32只能使用float64呢?

在 Go 语言中,当你从前端(例如通过 HTTP 请求)接收数据时,这些数据通常以字符串的形式到达后端。然后,后端需要将这些字符串解析或转换为适当的类型,比如 float32 或 float64。 然而,如果你发现…

JAVASE进阶day08(Map双列集合)

HashMap 1.HashMap基本使用 package com.lu.day08.map;import java.util.HashMap; import java.util.Map; import java.util.Set;public class MapDome {public static void main(String[] args) {HashMap<String , String> map new HashMap<>();//添加后者修改-…

H264视频编码中Annex B 格式介绍

Annex B 格式是 H.264 (也称为 AVC) 视频编码标准中的一种数据表示格式&#xff0c;用于将视频数据从编码器传输到解码器。它主要用于流媒体传输和文件存储。 文章目录 Annex B 格式的定义Annex B 格式的主要特点Annex B 与其他格式的对比Annex B 格式示例将 H.264 数据从 MP4…

查询(q_proj)、键(k_proj)和值(v_proj)投影具体含义

查询(q_proj)、键(k_proj)和值(v_proj)投影&#xff0c;这些投影是自注意力机制的核心组件&#xff0c;特别是在Transformer架构中。 让我们通过一个简化的例子来说明&#xff1a; import numpy as np# 假设输入维度是4&#xff0c;注意力头数是2 input_dim 4 num_heads 2 …

每天一道Java面试题系列之--Spring如何解决循环依赖问题

面试题&#xff1a;Spring如何解决循环依赖问题&#xff1f; 问题背景&#xff1a; 在Spring框架中&#xff0c;循环依赖通常发生在单例&#xff08;Singleton&#xff09;作用域的bean之间。当两个或多个bean在它们的构造函数中相互引用时&#xff0c;Spring容器在创建这些b…

电脑32位和62位是什么意思

在现代计算机世界中&#xff0c;32位和64位是两个常见的术语&#xff0c;但许多用户可能不太清楚它们的确切含义以及它们之间的区别。本文将详细介绍32位和64位计算机的基本概念、如何查看您的计算机是32位还是64位&#xff0c;以及它们对用户的实际影响。 32位与64位的基本概…

算法之工程化内容(1)—— Linux常用命令

目录 1. cd 命令 2. pwd 查看当前工作目录路径 3. SSH远程登录 4. ln -s 软链相关 5. mkdir 新建空目录 6. cp 复制 7. chown 权限改写 8. 进程相关&#xff08;nohup/ ps/ kill&#xff09; 9. tar -czvf/ tar -xzvf&#xff0c;zip/ unzip解压缩文件 10. df/ du/ free 11. hi…

MySQL篇七:复合查询

文章目录 前言1. 基本查询回顾2. 多表查询3. 自连接4. 子查询4.1 单行子查询4.2 多行子查询4.3 多列子查询4.4 在from子句中使用子查询4.5 合并查询4.5.1 union4.5.2 union all 前言 前面我们讲解的mysql表的查询都是对一张表进行查询&#xff0c;在实际开发中这远远不够。 1.…

【高中数学/指数函数】比较a=0.6^0.9 b=0.6^1.5 c=1.5^0.6的大小

【问题】 比较a0.6^0.9 b0.6^1.5 c1.5^0.6的大小 【解答】 指数函数y0.6^x是减函数&#xff0c;因为0.9<1.5,所以0.6^0.9>0.6^1.5,即a>b; 指数函数y1.5^x是增函数&#xff0c;1.5^0.6>1.5^01>0.6^0.9,即c>a; 综上&#xff0c;得出c>a>b的结论。 …

【运维】docker批量删除临时镜像(两种方式)

docker批量删除Tag<none>的临时镜像 在开发的时候&#xff0c;需要经常发布开发包&#xff0c;在使用docker build构建镜像的时候&#xff0c;同一个版本经常会使用相同tag&#xff0c;频繁打包一段时间后&#xff0c;本地会出现很多Tag<none>的临时镜像&#xff…

【MySQL】MySQL中的字段类型和区别

文章目录 前言一、说明举例1. 数值类型2. 字符串类型3. 日期和时间类型 二、总结 前言 在设计数据库和创建表时&#xff0c;理解MySQL中的各种字段类型及其区别是非常重要的。每种类型都有其特定的用途和存储需求。在本文中&#xff0c;我们将详细讨论MySQL中的各种字段类型&a…

uniapp如何发送websocket请求

方法1&#xff1a; onLoad() {uni.connectSocket({url: ws://127.0.0.1:8000/ws/stat/realTimeStat/,success: (res) > {console.log(connect success, res);}});uni.onSocketOpen(function (res) {console.log(WebSocket连接已打开&#xff01;);uni.sendSocketMessage({d…

Xinstall揭秘:APP推广数据背后的真相,让你的营销更精准!

在这个移动互联网时代&#xff0c;APP如同雨后春笋般涌现&#xff0c;但如何在这片红海中脱颖而出&#xff0c;成为每一个开发者与运营者面临的共同难题。其中&#xff0c;APP推广统计作为衡量营销效果、优化推广策略的关键环节&#xff0c;更是不可忽视的一环。今天&#xff0…