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

相关推荐
HLC++1 小时前
Linux的进程间通信
android·linux·服务器
白露与泡影2 小时前
Arthas 实战指南:从方法耗时定位到 JVM 变量热修改
服务器·jvm·c#
神奇霸王龙3 小时前
Claude Code屠榜:MiMo与Grok紧追Codex
服务器·网络·人工智能·gpt·ai·ai编程
Web极客码3 小时前
WordPress SEO优化:提升网站排名的13个关键步骤
服务器·seo·wordpress
张小姐的猫7 小时前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
国科安芯7 小时前
星间光链路:AS32S601型抗辐射MCU在空间激光通信终端控制中的技术实现
服务器·网络·单片机·嵌入式硬件·物联网·安全·信息与通信
imc.118 小时前
linux基础IO
linux·运维·服务器
躺不平的理查德8 小时前
让Ubuntu 的第二块网卡 ens37 永久固定为 192.168.30.111
运维·服务器
bitbrowser9 小时前
Facebook 验证反复回到原页面,应该从哪里排查
运维·服务器·facebook
糖果店的幽灵9 小时前
langgraph的分支结构之 - 静态分支详解
java·服务器·数据库·langgraph