Nginx相关

一 安装nginx

  1. rpm包安装
bash 复制代码
sudo apt install nginx -y
  1. 验证
bash 复制代码
sudo systemctl start nginx 
sudo systemctl enable nginx # 设置开机自启
sudo systemctl status nginx

二 配置反向代理

假设需要将http://your_domain.com/api反向代理到后端服务(如http://localhost:3000

  1. 创建Nginx配置文件
bash 复制代码
sudo nano /etc/nginx/sites-available/your_proxy.conf
  1. 写入配置内容 nginx
bash 复制代码
server {
    listen 80;
    server_name your_domain.com;  # 替换为你的域名或服务器IP

    # 反向代理配置
    location /api/ {
        proxy_pass http://localhost:3000/;  # 后端服务地址(结尾的/需保持一致)
        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;
    }

    # 可选:配置静态资源代理(如前端页面)
    location / {
        root /var/www/html;  # 前端文件目录
        index index.html;
        try_files $uri $uri/ /index.html;  # 支持SPA路由
    }
}
  1. 启用配置文件
bash 复制代码
sudo ln -s /etc/nginx/sites-available/your_proxy.conf /etc/nginx/sites-enabled/
  1. 检查配置语法
bash 复制代码
sudo nginx -t
  1. 重启Nginx
bash 复制代码
sudo systemctl restart nginx
  1. 测试

访问http://your_domain.com/api,Nginx 会将请求转发到http://localhost:3000,并返回后端服务的响应。

示例:

Nginx 反向代理视频流与 tcpdump 抓包

步骤 1:选择公网视频流(示例:B 站公开视频流)

以 B 站某公开视频流为例(实际可替换为任意公网视频流地址),假设公网视频流地址为https://example.com/video/stream

步骤 2:配置 Nginx 反向代理

(1)创建 Nginx 代理配置文件

bash

arduino 复制代码
sudo vim /etc/nginx/sites-available/video-proxy.conf
(2)写入反向代理配置

nginx

ini 复制代码
server {
    listen 80;
    server_name 服务器IP;

    location / {
        proxy_pass https://example.com/video/stream;  # 替换为公网视频流实际地址
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
(3)启用配置并重启 Nginx

bash

bash 复制代码
sudo ln -s /etc/nginx/sites-available/video-proxy.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

步骤 3:使用 tcpdump 抓包

(1)执行抓包命令(替换ens33为实际网卡)

bash

css 复制代码
sudo tcpdump -i ens33 -w video_stream.pcap tcp -nn -s 0
(2)触发视频流访问

在 PC 播放器中输入http://服务器IP(通过 Nginx 代理访问视频流),播放一段时间后按Ctrl+C停止抓包。

步骤 4:提交文件

  • 转换出的视频文件:output.flv
  • 抓包文件:video_stream.pcap将上述两个文件按考官要求提交即可。
相关推荐
qq_297574674 小时前
【实战教程】SpringBoot 集成阿里云短信服务实现验证码发送
spring boot·后端·阿里云
韩立学长6 小时前
【开题答辩实录分享】以《智能大学宿舍管理系统的设计与实现》为例进行选题答辩实录分享
数据库·spring boot·后端
编码者卢布8 小时前
【Azure Storage Account】Azure Table Storage 跨区批量迁移方案
后端·python·flask
她说..11 小时前
策略模式+工厂模式实现审批流(面试问答版)
java·后端·spring·面试·springboot·策略模式·javaee
梦梦代码精11 小时前
开源、免费、可商用:BuildingAI一站式体验报告
开发语言·前端·数据结构·人工智能·后端·开源·知识图谱
李慕婉学姐12 小时前
【开题答辩过程】以《基于Spring Boot的疗养院理疗管理系统的设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·spring boot·后端
tb_first12 小时前
SSM速通2
java·javascript·后端
一路向北⁢13 小时前
Spring Boot 3 整合 SSE (Server-Sent Events) 企业级最佳实践(一)
java·spring boot·后端·sse·通信
风象南13 小时前
JFR:Spring Boot 应用的性能诊断利器
java·spring boot·后端
爱吃山竹的大肚肚13 小时前
微服务间通过Feign传输文件,处理MultipartFile类型
java·spring boot·后端·spring cloud·微服务