云计算百科
云计算领域专业知识百科平台

啊里服务器之Flask 开发模式部署完整步骤指南

第一,打开finalshell软件
第二,新建,SSH linux链接
名称:Flask 开发模式
主机:12345678 端口:22
方法:密码
用户名:root
密码:abc4951

步骤0:安装依赖 Python3 和 Flask
 更新包管理工具 & 安装 pip
apt update
apt install python3 python3-pip -y

安装 Flask 框架
pip3 install flask
安装 tmux(后台保持运行工具)
apt install tmux -y
创建项目文件夹 & 编写 Flask 代码
 1、创建文件夹并进入
mkdir -p /root/upload_server
cd /root/upload_server
创建 upload_server.py 主程序文件

cat > upload_server.py << 'EOF'
from flask import Flask, request, send_from_directory
import os

app = Flask(__name__)
UPLOAD_FOLDER = '/var/www/html'
# 确保上传文件夹存在
os.makedirs(UPLOAD_FOLDER, exist_ok=True)
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER

# 上传接口:保留原始文件名
@app.route('/upload', methods=['POST'])
def upload():
    if 'file' not in request.files:
        return '未选择文件'
    file = request.files['file']
    filename = file.filename
    save_path = os.path.join(UPLOAD_FOLDER, filename)
    file.save(save_path)
    return "ok"

# 直接访问上传的网页/文件
@app.route('/<filename>')
def serve_file(filename):
    return send_from_directory(UPLOAD_FOLDER, filename)

if __name__ == '__main__':
    # 开发模式运行:监听全部网卡,端口8080
    app.run(host='0.0.0.0', port=8080, debug=True)
EOF

步骤 1(主 SSH 终端):编辑 Flask 代码
nano /root/upload_server/upload_server.py
粘贴下面完整代码
from flask import Flask, request, send_from_directory
import os

app = Flask(__name__)
UPLOAD_FOLDER = '/var/www/html'
# 确保上传文件夹存在
os.makedirs(UPLOAD_FOLDER, exist_ok=True)
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER

# 上传接口:保留原始文件名
@app.route('/upload', methods=['POST'])
def upload():
    if 'file' not in request.files:
        return '未选择文件'
    file = request.files['file']
    filename = file.filename
    save_path = os.path.join(UPLOAD_FOLDER, filename)
    file.save(save_path)
    return "ok"

# 直接访问上传的文件
@app.route('/<filename>')
def serve_file(filename):
    return send_from_directory(UPLOAD_FOLDER, filename)

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8080)
保存:按 Ctrl+O → 回车
退出:按 Ctrl+X

 验证代码
cat upload_server.py

步骤 4:阿里云安全组放行 8080 TCP 端口
登录阿里云官网 → 进入云服务器 ECS 控制台
找到实例 → 安全组 → 配置规则
添加放行规则:
协议:TCP
端口:8080
授权对象:0.0.0.0/0(全网访问,仅测试用)
策略:允许
保存

步骤 5(主 SSH 终端):进入 tmux 重启服务
1、进入 tmux 会话 bash
   tmux a -t flask_upload

python3 upload_server.py
4、后台脱离:Ctrl+B → 松开按 D

步骤 3(本地电脑):重新上传 index.html
打开你本地的 test.html 上传页面,再次上传 index.html
上传成功页面显示 ok
此时文件真实保存在服务器 /var/www/html/index.html

步骤 4(本地浏览器):直接打开网页
http://8.134.197.176:8080/index.html
步骤 5 验证(SSH 查看文件)
ls /var/www/html

(主 SSH 终端)
cat > /root/upload_server/upload_server.py << 'EOF'
from flask import Flask, request, send_from_directory
import os

app = Flask(__name__)
UPLOAD_FOLDER = '/var/www/html'
# 确保上传文件夹存在
os.makedirs(UPLOAD_FOLDER, exist_ok=True)
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER

# 上传接口:保留原始文件名
@app.route('/upload', methods=['POST'])
def upload():
    if 'file' not in request.files:
        return '未选择文件'
    file = request.files['file']
    filename = file.filename
    save_path = os.path.join(UPLOAD_FOLDER, filename)
    file.save(save_path)
    return "ok"

# 直接访问上传的文件
@app.route('/<filename>')
def serve_file(filename):
    return send_from_directory(UPLOAD_FOLDER, filename)

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8080)
EOF

验证是否修改成功,输入:
cat /root/upload_server/upload_server.py
查看目录:
ls /var/www/html

客户端:
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>文件上传</title>
</head>
<body>
    <h3>上传文件到服务器</h3>
    <!– 上传接口地址 –>
    <form action="http://1234578:8080/upload" method="post" enctype="multipart/form-data">
        <!– 字段名必须是 name="file",和后端匹配 –>
        <input type="file" name="file">
        <br><br>
        <button type="submit">提交上传</button>
    </form>
</body>
</html>

重要提醒
当前是 Flask 开发模式,仅适合测试使用,不适合正式长期对外访问。
如需正式部署(如 Nginx)可以后续再教你操作!

赞(0)
未经允许不得转载:网硕互联帮助中心 » 啊里服务器之Flask 开发模式部署完整步骤指南
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!