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服务器,再通过该服务器运行程序的全过程。

相关推荐
爱吃生蚝的于勒4 小时前
【Linux】进程信号之捕捉(三)
linux·运维·服务器·c语言·数据结构·c++·学习
The森4 小时前
Linux IO 模型纵深解析 01:从 Unix 传统到 Linux 内核的 IO 第一性原理
linux·服务器·c语言·经验分享·笔记·unix
期待のcode4 小时前
Redis的主从复制与集群
运维·服务器·redis
翼龙云_cloud4 小时前
腾讯云代理商: Linux 云服务器搭建 FTP 服务指南
linux·服务器·腾讯云
REDcker5 小时前
gRPC开发者快速入门
服务器·c++·后端·grpc
江湖有缘6 小时前
零基础入门:使用 Docker 快速部署 Organizr 个人主页
java·服务器·docker
wangjialelele6 小时前
Linux下的IO操作以及ext系列文件系统
linux·运维·服务器·c语言·c++·个人开发
HypoxiaDream6 小时前
LINUX-Ext系列⽂件系统
linux·运维·服务器
李斯啦果6 小时前
【Linux】Linux目录配置
linux·运维·服务器
AI+程序员在路上6 小时前
linux下线程中pthread_detach与pthread_join区别
linux·运维·服务器