跨网络互联技术(Nginx反向代理)

安装 Nginx

复制代码
sudo apt install nginx -y

安装完成后,Nginx 默认会监听 80 端口,你可以测试:

复制代码
curl http://localhost

如果能返回一个默认页面,说明安装成功。

申请/准备证书

你已经用 acme.sh 申请过证书,路径是:

公钥:/root/.acme.sh/2025xxx.help_ecc/fullchain.cer

私钥:/root/.acme.sh/2025xxx.help_ecc/2025xxx.help.key
这就是我们要在 Nginx 配置里用的证书。

配置 Nginx

编辑配置文件:

复制代码
sudo nano /etc/nginx/sites-available/2025xxx.help

写入以下内容:

复制代码
server {
    listen 80;
    server_name 2025xxx.help;
    # 所有 http 请求跳转到 https
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name 2025xxx.help;

    ssl_certificate /root/.acme.sh/2025xxx.help_ecc/fullchain.cer;
    ssl_certificate_key /root/.acme.sh/2025xxx.help_ecc/2025xxx.help.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    location / {
        proxy_pass http://127.0.0.1:5000;   # Flask 跑在 5000 端口
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

保存后,启用配置:

复制代码
sudo ln -s /etc/nginx/sites-available/2025xxx.help /etc/nginx/sites-enabled/
sudo nginx -t   # 检查配置是否正确
sudo systemctl reload nginx

运行 Flask

修改你的 Flask 代码,让它监听 5000 端口

复制代码
app.run(host="0.0.0.0", port=5000)

用户访问 https://2025cc2026.help/ → Nginx 处理 TLS → 转发到 Flask (5000)。

用户访问 http://2025cc2026.help/ → 自动跳转到 HTTPS。

相关推荐
北京耐用通信5 小时前
全域适配工业场景耐达讯自动化Modbus TCP 转 PROFIBUS 网关轻松实现以太网与现场总线互通
网络·人工智能·网络协议·自动化·信息与通信
在角落发呆6 小时前
Linux转发配置:解锁网络互联的核心密码
linux·运维·网络
江公望8 小时前
Ubuntu htop命令,10分钟讲清楚
linux·服务器
哎呦,帅小伙哦8 小时前
Linux 时间:从原子钟到 clock_gettime 的每一面
linux·运维·服务器
张小姐的猫8 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
YMWM_8 小时前
UDP协议详解:从原理到Python实践
网络·网络协议·udp
pengyi8710159 小时前
共享 IP 与独享 IP 怎么选?被封后升级方案避坑
网络·网络协议·tcp/ip
YuanDaima20489 小时前
Linux 进阶运维与 AI 环境实战:进程管理、网络排错与 GPU 监控
linux·运维·服务器·网络·人工智能
lolo大魔王10 小时前
Linux 数据文件处理实战:排序、搜索、压缩、归档一站式详解
linux·运维·服务器
凯勒姆10 小时前
网工网络设备原理及配置
网络·智能路由器