news 2026/2/14 9:18:40

DeerFlow部署教程:Nginx反向代理配置WebUI访问与HTTPS支持

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
DeerFlow部署教程:Nginx反向代理配置WebUI访问与HTTPS支持

DeerFlow部署教程:Nginx反向代理配置WebUI访问与HTTPS支持

1. DeerFlow是什么:你的个人深度研究助理

DeerFlow不是另一个简单的聊天机器人,而是一个能真正帮你做深度研究的智能助手。它像一位随时待命的研究搭档——当你想了解比特币价格波动背后的宏观逻辑,它能自动检索最新财经报道、链上数据和机构研报;当你需要撰写一份医疗AI技术趋势报告,它会调用多个搜索引擎比对信息源,执行Python代码分析公开数据集,再整合成结构清晰的文档;甚至还能把这份报告转成自然流畅的播客脚本,用接近真人语调的声音为你朗读。

它不依赖单一模型“硬算”,而是通过协调多个专业角色协同工作:有负责整体规划的“协调器”,有专注信息检索的“研究员”,有擅长代码执行的“编码员”,还有专精内容组织的“报告员”。这种多智能体协作方式,让DeerFlow在处理复杂、长链条的研究任务时,表现得更像一个有分工、有流程的专业研究团队。

2. 为什么需要Nginx反向代理与HTTPS

DeerFlow默认启动后,WebUI服务监听在本地http://127.0.0.1:8000,这带来两个现实问题:

  • 无法远程访问:你在家里的电脑上部署了DeerFlow,却只能在服务器本机打开浏览器访问,手机、公司电脑、平板全都连不上;
  • 安全性不足:HTTP协议传输的数据是明文的,登录凭证、研究提问、生成的报告内容都可能被截获,尤其当你处理的是敏感行业信息或内部资料时,风险更高。

Nginx反向代理就是解决这两个问题的“桥梁”——它对外暴露一个安全、易记的地址(比如https://research.yourdomain.com),接收所有来自互联网的请求,再把它们悄悄转发给DeerFlow的本地服务;而HTTPS则在这座桥上加了一层加密隧道,确保所有数据在传输过程中都被牢牢锁住。

这不是可有可无的“高级配置”,而是让DeerFlow从一个本地实验工具,真正变成你日常研究工作流中可靠一环的关键一步。

3. 环境准备与前置检查

在开始配置Nginx之前,请先确认DeerFlow核心服务已稳定运行。这一步看似简单,却是后续所有操作的基础。

3.1 验证vLLM大模型服务状态

DeerFlow依赖vLLM提供高性能的Qwen3-4B-Instruct-2507模型推理能力。如果它没起来,WebUI打开后将无法响应任何提问。

请执行以下命令查看日志:

cat /root/workspace/llm.log

正常情况下,你应该能看到类似这样的关键输出行:

INFO 01-26 10:23:45 [engine.py:292] Started engine with config: model='Qwen3-4B-Instruct-2507', tensor_parallel_size=1, dtype=bfloat16 INFO 01-26 10:23:47 [http_server.py:123] HTTP server started on http://0.0.0.0:8001

重点看最后两行:Started engine表示模型加载成功,HTTP server started表示vLLM的API服务已监听在0.0.0.0:8001。如果日志里出现ERROR或长时间卡在Loading model...,请先排查GPU显存、模型路径或CUDA版本问题。

3.2 验证DeerFlow主服务状态

接下来确认DeerFlow自身的协调与Web服务是否就绪:

cat /root/workspace/bootstrap.log

理想日志应包含:

INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit) INFO: Application startup complete.

这表示DeerFlow的WebUI后端已成功启动,并监听在0.0.0.0:8000。此时,你可以在服务器上用curl http://localhost:8000测试,返回HTML内容即为正常。

小贴士:如果你发现两个服务都启动了,但浏览器访问http://服务器IP:8000仍失败,请检查云服务器的安全组规则,确保80008001端口已对你的IP开放(仅用于临时验证,正式环境切勿长期开放)。

4. Nginx安装与基础反向代理配置

现在,我们来搭建那座安全的“桥梁”。

4.1 安装Nginx

在Ubuntu/Debian系统上,执行:

sudo apt update sudo apt install nginx -y sudo systemctl enable nginx sudo systemctl start nginx

安装完成后,在浏览器中输入你的服务器公网IP,应该能看到Nginx默认欢迎页。这说明Nginx已正确运行。

4.2 创建DeerFlow专属配置文件

Nginx的配置文件通常放在/etc/nginx/sites-available/目录下。我们为DeerFlow创建一个独立配置,便于管理:

sudo nano /etc/nginx/sites-available/deerflow

将以下内容粘贴进去(请务必将your-domain.com替换为你自己的域名,例如research.mycompany.com):

upstream deerflow_backend { server 127.0.0.1:8000; } server { listen 80; server_name your-domain.com; location / { proxy_pass http://deerflow_backend; 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; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_redirect off; } # 静态资源缓存优化 location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ { expires 1y; add_header Cache-Control "public, immutable"; } }

这个配置做了几件关键事:

  • upstream定义了一个名为deerflow_backend的后端服务组,指向DeerFlow的8000端口;
  • server块监听80端口,当有人访问your-domain.com时,Nginx会接管请求;
  • location /是核心,它把所有请求(包括WebSocket连接,这对DeerFlow的实时交互至关重要)原封不动地转发给后端;
  • proxy_set_header系列指令确保DeerFlow能正确识别用户的真实IP和访问协议,避免出现“无法连接”或“登录失效”的问题。

4.3 启用配置并测试HTTP访问

配置好后,需要创建软链接启用它:

sudo ln -sf /etc/nginx/sites-available/deerflow /etc/nginx/sites-enabled/ sudo nginx -t

nginx -t命令会检查语法是否正确。如果看到syntax is oktest is successful,就可以重载Nginx使配置生效:

sudo systemctl reload nginx

现在,打开你的浏览器,访问http://your-domain.com(注意是http,不是https)。你应该能看到DeerFlow熟悉的WebUI界面,和直接访问http://服务器IP:8000完全一致。这意味着反向代理的第一步——HTTP访问——已经成功。

5. 配置HTTPS:获取SSL证书并启用加密

HTTP只是第一步,HTTPS才是生产环境的标配。我们将使用免费、自动化且广受信任的Let’s Encrypt服务来获取SSL证书。

5.1 安装Certbot并获取证书

Certbot是Let’s Encrypt官方推荐的证书管理工具。安装命令如下:

sudo apt install certbot python3-certbot-nginx -y

然后,执行以下命令一键获取并安装证书(同样请替换your-domain.com):

sudo certbot --nginx -d your-domain.com

执行过程中,Certbot会:

  • 自动检测Nginx配置中定义的域名;
  • 引导你输入邮箱(用于证书到期提醒);
  • 询问是否将HTTP自动重定向到HTTPS(强烈建议选择“2: Redirect”);
  • 自动修改/etc/nginx/sites-available/deerflow文件,添加HTTPS监听和重定向规则。

整个过程无需手动编辑证书文件,Certbot会把证书存放在/etc/letsencrypt/live/your-domain.com/目录下,并自动配置Nginx使用它们。

5.2 验证HTTPS与自动续期

完成Certbot后,再次访问https://your-domain.com。浏览器地址栏应显示绿色的锁形图标,点击它可以查看证书详情,确认颁发者是“Let’s Encrypt”。

Let’s Encrypt证书有效期为90天,但Certbot已为你配置了自动续期任务。你可以手动测试续期是否有效:

sudo certbot renew --dry-run

如果看到Congratulations, all simulated renewals succeeded,就说明一切安好。系统会在证书到期前30天自动尝试更新,你完全无需操心。

6. WebUI使用与常见问题排查

现在,你的DeerFlow已经拥有了一个安全、专业的访问入口。让我们快速走一遍使用流程,并解决几个新手最常遇到的“卡点”。

6.1 标准使用流程

  1. 打开前端:在浏览器中输入https://your-domain.com,进入DeerFlow WebUI;
  2. 启动研究:点击页面中央醒目的红色按钮(如你提供的截图2.5.2所示),它通常标有“Start Research”或“New Session”;
  3. 提出问题:在输入框中写下你的研究需求,例如:“对比分析2024年Q1全球主流AI芯片(H100, MI300X, A100)的FP16算力、功耗与市场价格”;
  4. 等待结果:DeerFlow会显示清晰的执行步骤(搜索、编码、分析、报告),最终生成一份图文并茂的PDF报告或可直接收听的播客。

6.2 三个高频问题与解决方案

  • 问题1:页面空白或显示“Connection refused”
    原因:Nginx配置中的proxy_pass地址错误,或DeerFlow服务意外停止。
    解决:先执行sudo systemctl status nginx确认Nginx运行;再执行cat /root/workspace/bootstrap.log | tail -20查看DeerFlow最新日志,确认其仍在监听8000端口。

  • 问题2:能打开首页,但点击“Start Research”后无反应或报错
    原因:WebSocket连接被阻断,通常是Nginx配置中缺少UpgradeConnection头部。
    解决:检查/etc/nginx/sites-available/deerflow文件,确保location /块内包含了proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";这两行。

  • 问题3:HTTPS访问正常,但报告中的图片链接仍是HTTP,导致浏览器拦截混合内容
    原因:DeerFlow生成的内容里硬编码了HTTP地址。
    解决:在DeerFlow的配置文件(通常是.envconfig.yaml)中,查找BASE_URLWEBUI_URL类似字段,将其值改为https://your-domain.com,然后重启DeerFlow服务。

7. 总结:从本地工具到专业研究平台

回顾整个配置过程,我们其实只完成了三件事:确认服务健康、架设Nginx桥梁、铺上HTTPS加密隧道。但这三步,却彻底改变了DeerFlow的定位——它不再是你服务器角落里一个需要SSH登录才能触碰的实验品,而是一个可以随时在笔记本、平板甚至手机上打开的专业研究平台。

你获得的不仅是一个带HTTPS的网址,更是一种工作方式的升级:研究想法可以随时随地发起,生成的报告可以直接分享给同事,播客内容能一键推送到团队频道。这种无缝、安全、可靠的体验,正是现代AI工具融入真实工作流的核心价值。

下一步,你可以探索DeerFlow更深层的能力:接入企业内部知识库、定制专属研究模板、或是将生成的报告自动同步到Notion或飞书。而这一切,都建立在一个稳定、安全的访问基础之上。


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/6 3:18:59

医疗AI新体验:MedGemma-X影像诊断快速入门指南

医疗AI新体验:MedGemma-X影像诊断快速入门指南 1. 为什么放射科医生开始用“对话”看片? 你有没有见过这样的场景:一位放射科医生盯着一张胸部X光片,眉头微皱,手指在屏幕上轻轻划过肺野边缘,自言自语&#…

作者头像 李华
网站建设 2026/2/9 5:35:40

从0开始玩转VibeThinker-1.5B,数学竞赛题轻松应对

从0开始玩转VibeThinker-1.5B,数学竞赛题轻松应对 你是否试过在深夜刷一道AIME真题,卡在第三步推导,翻遍论坛却找不到清晰的思维链?是否在LeetCode上反复提交,只因边界条件没想全?又或者,你只是…

作者头像 李华
网站建设 2026/2/8 7:27:55

Qwen3-32B Web网关安全加固:Clawdbot支持IP白名单与速率限制

Qwen3-32B Web网关安全加固:Clawdbot支持IP白名单与速率限制 1. 为什么需要给AI网关加把“锁” 你有没有遇到过这样的情况:刚部署好一个基于Qwen3-32B的Chat平台,第二天就发现API调用量暴增,响应变慢,甚至出现异常请…

作者头像 李华
网站建设 2026/2/3 13:55:39

Qwen3-VL-4B Pro保姆级教程:从图片上传到智能问答全流程

Qwen3-VL-4B Pro保姆级教程:从图片上传到智能问答全流程 1. 这不是“又一个看图说话”工具——它到底强在哪? 你可能已经用过不少图文对话模型:传张图,问个问题,得到一段文字回答。但Qwen3-VL-4B Pro不是那种“能说就…

作者头像 李华
网站建设 2026/2/10 7:02:57

3大核心功能助力视频分析:B站数据采集工具全解析

3大核心功能助力视频分析:B站数据采集工具全解析 【免费下载链接】Bilivideoinfo Bilibili视频数据爬虫 精确爬取完整的b站视频数据,包括标题、up主、up主id、精确播放数、历史累计弹幕数、点赞数、投硬币枚数、收藏人数、转发人数、发布时间、视频时长、…

作者头像 李华