Windows系统上创建Flask服务器

为什么需要掌握服务器搭建技能?

掌握服务器搭建技能对于任何需要在线提供服务或平台的个人创意者来说都至关重要。服务器的作用是确保全球任何地方的用户都能顺利访问你的平台。因此,了解如何搭建和维护服务器,不仅能提升平台的稳定性和访问速度,还能让你在向他人推荐自己的平台时,确保他们能够无障碍地访问。

创建服务器的过程首先建议创建一个Python虚拟环境,然后再搭建Flask服务器。

创建Python虚拟环境

比如,我想为我的在线简历搭建服务器,方便招聘方访问我的在线简历,同时不说话就让招聘方能力我的编程和设计能力。

1)创建文件夹

在D盘或者C盘中,为需要创建服务器的软件平台一个文件夹,比如,我创建了一个名叫MyProfile的文件夹。

2)执行创建虚拟环境代码

进入该文件夹,右键,选择在终端中打开。

复制代码
python -m venv .venv

这行代码的作用是使用 Python 的 venv 模块在当前目录下创建一个名为 .venv 的虚拟环境目录。创建虚拟环境后,你可以在其中安装特定的 Python 包,且这些包只会影响当前项目,不会影响全局的 Python 环境。

该行代码执行后,会在我的MyProfile文件夹中多了一个名为.venv文件夹,可以使用该结果检查代码是否执行成功。

3)激活虚拟环境

使用下列代码激活该虚拟环境

复制代码
. .venv/Scripts/activate

可以检查终端中是否显示(.venv),如果显示的话,说明该虚拟环境激活成功。

创建Flask服务器

Flask服务器所需文件结构如下

复制代码
├── App.py # Flask服务器的Python逻辑代码,表示该Flask服务器是通过Python语句编写的
├── static # 用于存放CSS和JS代码文件的文件夹
└── templates # 用于存放HTML代码文件的文件夹

APP.py

Flask的Python逻辑代码语句如下

复制代码
from flask import Flask, request, jsonify, render_template
import os

app = Flask(__name__)

# 设置静态文件夹和模板文件夹
app.static_folder = 'static'
app.template_folder = 'templates'

@app.route('/')
def home():
    return render_template('index.html')

if __name__ == '__main__':

    # 启动服务器
    app.run(host='0.0.0.0', debug=True)
  • Flask服务器最重要的是路由的概念,上述代码创建了一个路由:'/' :表示当访问http://127.0.0.1:5000/ 会执行home函数。

  • 在home函数中,调用render_template将服务器中的"index.html"推送给浏览器。

  • app.run(host='0.0.0.0', debug=True) host='0.0.0.0': 表示 Flask 服务器可以接受来自任何 IP 地址的连接,通常用于开发阶段。如果你只想让本机访问,可以将其设置为 '127.0.0.1' (默认值)。

程序运行

运行程序:

复制代码
python App.py

点击回车键,就会在终端中看到返回的信息中包含一个url,这就是服务器地址,通过访问该地址就可以看到index.html的展示效果。

按住Ctrl键的同时,点击该url就能实现访问了。

以上就是从构建对应的虚拟环境然后创建Flask服务器,再通过该服务器运行程序的全过程。

相关推荐
Brilliantwxx6 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
不怕犯错,就怕不做6 小时前
git prune 自动删除本地记录中那些远程已经不存在的分支引用
linux·服务器·git
weixin_416667967 小时前
【无标题】
运维·服务器·网络
上海云盾-小余9 小时前
流量攻击复盘:为什么 WAF 完好,业务依旧瘫痪
运维·服务器·网络
我命由我1234511 小时前
Linux - Linux/POSIX 路径斜杠折叠规则
linux·运维·服务器·android studio·android jetpack·android-studio·android runtime
Uncertainty!!12 小时前
Linux 主机无法完成校园网认证排查记录:从 DHCP、ARP 到 Portal 认证流程分析
linux·运维·服务器
其实防守也摸鱼12 小时前
权限提升与横向移动:从内网渗透到域控的完整技术图谱
运维·服务器·数据库·安全·github·copilot·渗透
mounter62512 小时前
突破零停机演进:Linux 内核 Live Update Orchestrator (LUO) 架构设计与热升级演进
linux·服务器·linux kernel·kernel·kho·luo
黑泽明*12 小时前
KVM虚拟化入门与热迁移实战
运维·服务器
波多利希最高礼仪的握力器12 小时前
安全复制SCP
linux·服务器·安全