乐于分享
好东西不私藏

别让你的 AI Agent 裸奔了:OpenClaw + n8n 安全编排实战

别让你的 AI Agent 裸奔了:OpenClaw + n8n 安全编排实战

你的 AI Agent 是不是同时扮演着"大脑"和"钱包"的角色?这篇文章教你如何把钱包锁进保险柜,让 Agent 只管思考。


从一次真实事故说起

上周,一位开发者在社区发帖:他的 AI Agent 在一次"幻觉"中,把 .env 里所有的 API Key 原样输出到了聊天日志里——Slack Token、GitHub Token、AWS 密钥,全部暴露。

这不是个例。当我们让 AI Agent 直接管理 API 密钥时,本质上是把保险柜的密码交给了一个"聪明但不完全可控"的助手。它大多数时候很靠谱,但你永远无法 100% 确定它下一秒不会犯错。

问题的根源不在于 Agent 不够聪明,而在于架构设计本身就有缺陷。


一个架构问题,三重代价

当 OpenClaw(或任何 AI Agent)直接处理外部 API 调用时,你会同时承受三个叠加的代价:

代价一:凭据蔓延——安全裸奔

每接入一个新服务,.env.local 就多一行密钥:

SLACK_BOT_TOKEN=xoxb-xxxxx
GITHUB_TOKEN=ghp_xxxxx
SENDGRID_API_KEY=SG.xxxxx
NOTION_API_KEY=ntn_xxxxx
AIRTABLE_API_KEY=pat_xxxxx

这些密钥全部暴露在 Agent 的运行时环境中。Agent 可以读取、可以输出、可以误用。一次错误的 git push,一次日志泄露,代价可能是灾难性的。

代价二:黑盒执行——调试地狱

Agent 调用外部 API 的逻辑藏在 JavaScript Skill 文件或 Shell 脚本里。当出问题时——比如一封邮件发到了错误的地址,或者 Slack 消息格式不对——你只能翻日志、猜逻辑、祈祷。

没有可视化工具,没有执行记录,没有中间状态。你甚至不知道 Agent 到底构建了什么。

代价三:Token 浪费——钱在燃烧

"发送一封邮件到 zhang@example.com,内容是'报告已生成'"——这个操作需要 LLM 推理吗?

不需要。它是 100% 确定性的操作。但如果让 Agent 直接执行,它依然会消耗几百个推理 Token 来"思考"怎么调 API。每天 100 次这样的操作,一个月白烧几十美元。


解法:OpenClaw + n8n 代理模式

这三个问题看似不同,实际上有一个统一的解法——把"决策"和"执行"分离开来

OpenClaw 负责理解、推理、决策——这是 LLM 擅长的事。n8n 负责凭据管理、API 调用、流程执行——这是工作流引擎擅长的事。两者通过 Webhook 桥接,Agent 永远不接触密钥。

用一张图说清楚整个数据流:

┌──────────────┐    Webhook 调用     ┌─────────────────┐    API 调用     ┌──────────────┐
│   OpenClaw   │ ──────────────────→ │   n8n 工作流     │ ──────────────→ │   外部服务    │
│  (AI 大脑)  │   只传业务数据       │ (凭据保险柜)    │  密钥在这里     │ Slack/GitHub │
│              │   不带任何密钥       │  已锁定+可审计   │  外部不可见     │  /邮件/DB    │
└──────────────┘                     └─────────────────┘                  └──────────────┘

打个比方:OpenClaw 是总经理,n8n 是财务部。总经理签字审批"给供应商打 10 万",但银行卡密码只有财务知道。总经理不碰钱,财务不做决策,各司其职。


为什么是 n8n?

你可能会问:工作流引擎那么多,为什么偏偏选 n8n?

四个核心理由:

特性
对 Agent 场景的价值
Webhook 触发器
天然适配 Agent 调用,一个 URL 搞定
凭据仓库
集中管理所有 API 密钥,加密存储,与工作流解耦
可视化 UI
拖拽式画布,每个节点可点开检查,告别黑盒
400+ 集成节点
Slack、GitHub、Notion、Google Sheets、Telegram... 开箱即用

更重要的是,n8n 可以自托管(self-hosted),数据不出你的服务器。对于企业场景,这一点至关重要。


工作原理:五步闭环

整个模式的运转遵循一个清晰的五步闭环:

Step 1:你描述需求

在 OpenClaw 对话框中用自然语言描述:

"帮我创建一个工作流:当 GitHub Issue 被标记为 urgent 时,自动在 Slack #alerts 频道发通知"

Step 2:Agent 自动构建工作流

OpenClaw 通过 n8n REST API 创建工作流,包含:

  • • 一个 Webhook 触发器节点(入口)
  • • 业务逻辑节点(条件判断、数据转换等)
  • • 外部服务节点(Slack 发消息)

同时生成一个 Webhook URL:http://n8n:5678/webhook/openclaw-github-urgent-alert

Step 3:你手动添加凭据

打开 n8n 的 Web UI(http://localhost:5678),在 Slack 节点中添加 Bot Token。

这一步只能你来做。Agent 看不到这个界面,也访问不到凭据仓库。这就是安全的关键。

Step 4:测试 → 锁定

在 n8n 中发送测试数据,确认工作流运行正常。然后 锁定工作流——防止 Agent 后续通过 API 修改它。

这一步极其重要。不锁定 = Agent 理论上可以通过 n8n API 修改工作流逻辑,绕过你设定的规则。

Step 5:Agent 只调 Webhook

从此以后,OpenClaw 只需执行:

curl -X POST http://n8n:5678/webhook/openclaw-github-urgent-alert \
  -H "Content-Type: application/json" \
  -d '{
    "issue_title": "生产数据库连接超时",
    "issue_url": "https://github.com/myorg/myrepo/issues/42",
    "labels": ["urgent", "production"],
    "author": "zhangsan"
  }'

Agent 不知道 Slack Token 是什么,不知道 GitHub Token 是什么。它只知道这个 URL,以及要传什么数据。


手把手搭建

方案一:Docker Compose 一键启动(推荐)

社区维护了一个预配置的 Docker 栈 openclaw-n8n-stack,两条命令搞定:

git clone https://github.com/caprihan/openclaw-n8n-stack.git
cd openclaw-n8n-stack
cp .env.template .env

编辑 .env,填入你的 Anthropic API Key——这是唯一需要给 OpenClaw 的密钥:

# .env
ANTHROPIC_API_KEY=sk-ant-xxxxx

启动:

docker-compose up -d

你会得到:

服务
地址
说明
OpenClaw
http://localhost:3456
AI Agent 主服务
n8n
http://localhost:5678
工作流编排平台

两个服务运行在同一 Docker 网络中,OpenClaw 通过 http://n8n:5678/webhook/... 直接调用 n8n,无需暴露端口到公网。

仓库还预置了几个即用模板:

  • • 多 LLM 事实核查:Agent 生成内容 → n8n 并行调用多个 LLM 交叉验证
  • • 邮件自动分类:收到邮件 → Agent 分析意图 → n8n 自动打标签归档
  • • 社交媒体监控:n8n 定时拉取关键词 → Agent 分析情感 → n8n 推送告警

方案二:手动集成(适合已有环境)

安装 n8n:

# npm 方式
npm install n8n -g
n8n start

# 或 Docker 方式
docker run -d --name n8n \
  -p 5678:5678 \
  -v n8n_data:/home/node/.n8n \
  n8nio/n8n

配置 OpenClaw 的行为规则:

在项目的 AGENTS.md 中添加以下指令,告诉 Agent 如何与 n8n 协作:

## n8n Integration Pattern

When I need to interact with external APIs:

1. NEVER store API keys in my environment or skill files
2. Check if an n8n workflow already exists for this integration
3. If not, create one via n8n API with a webhook trigger
4. Notify the user to add credentials and lock the workflow
5. For all future calls, use the webhook URL with a JSON payload

Workflow naming convention: openclaw-{service}-{action}
Example: openclaw-slack-send-message

Webhook call format:
curl -X POST http://n8n:5678/webhook/{workflow-name} \
  -H "Content-Type: application/json" \
  -d '{"key": "value"}'

这段话的作用是在 Agent 的"行为准则"中植入安全意识——它永远会先问"n8n 里有没有现成的工作流",而不是自己去存密钥调 API。


实战案例:GitHub Issue 紧急告警到 Slack

让我们走一遍完整流程。

1. 对 OpenClaw 说

"帮我创建一个 n8n 工作流,名叫 openclaw-github-urgent-alert。功能是接收 GitHub Issue 信息,如果 labels 中包含 urgent,就发送 Slack 消息到 #alerts 频道。"

2. OpenClaw 自动生成工作流

Agent 通过 n8n API 创建工作流,逻辑如下:

[Webhook 触发器]
    ↓ 接收 JSON 数据
[IF 节点:labels 包含 "urgent"?]
    ├─ 是 → [Slack 节点:发送到 #alerts]
    └─ 否 → [结束]

3. 你在 n8n 中添加 Slack 凭据

打开 http://localhost:5678,找到这个工作流,点开 Slack 节点:

  • • 点击 Credential to connect with → Create New
  • • 选择 Slack OAuth2 API
  • • 填入你的 Bot User OAuth Token
  • • 点击 Save

全程在 n8n 的 UI 里操作,Agent 无法感知这个过程。

4. 测试

在 n8n 中点 Test Workflow,手动输入测试数据:

{
"issue_title":"测试:生产环境告警",
"issue_url":"https://github.com/test/repo/issues/1",
"labels":["urgent","bug"],
"author":"test-user"
}

确认 Slack 收到消息后,激活工作流 → 锁定编辑权限

5. 上线运行

从此 OpenClaw 只需:

curl -X POST http://n8n:5678/webhook/openclaw-github-urgent-alert \
  -H "Content-Type: application/json" \
  -d '{"issue_title":"数据库连接池耗尽","issue_url":"https://github.com/myorg/core/issues/99","labels":["urgent","infrastructure"],"author":"zhangsan"}'

一行调用,零密钥暴露,全程可追溯。


进阶安全加固

基础流程跑通后,你还可以叠加三层安全防护:

第一层:Webhook 认证

在 n8n Webhook 节点中启用 Header Auth,Agent 调用时必须带上密钥头:

curl -X POST http://n8n:5678/webhook/openclaw-github-urgent-alert \
  -H "Content-Type: application/json" \
  -H "X-Webhook-Secret: your-webhook-secret" \
  -d '{"issue_title": "..."}'

这样即使 Webhook URL 泄露,没有 Secret 也触发不了。注意:这个 Secret 可以配置在 OpenClaw 的环境变量中——它只是一个"门禁卡",不是外部服务的 API 密钥,安全等级完全不同。

第二层:速率限制

在工作流中插入一个 Function 节点,限制调用频率:

// n8n Function 节点
const key = `rate:${$json.author || 'unknown'}`;
const now = Date.now();
const lastCall = awaitthis.helpers.getWorkflowStaticData('global')[key] || 0;

if (now - lastCall < 60000) { // 同一来源 1 分钟内只允许 1 次
thrownewError('Rate limit exceeded: 1 call per minute');
}

this.helpers.getWorkflowStaticData('global')[key] = now;
return items;

第三层:人工审批门控

对于高风险操作(删除资源、发布版本、发送群发邮件),在 n8n 中插入 Wait 节点:

[Webhook] → [验证] → [⏳ Wait: 等待人工审批] → [执行操作]

n8n 会生成一个审批链接,只有你点击"Approve"后流程才会继续。Agent 无论怎么调用 Webhook,都绕不过这个人工关卡。


成本对比:一笔账算清楚

假设你每天执行 100 次确定性 API 操作(发邮件、更新表格、推送通知):

Agent 直接调 API
Agent → n8n 工作流
LLM Token 消耗
~100 × 500 = 50K Token/天
0
(确定性操作不走 LLM)
凭据暴露面
所有 API Key 在 Agent 环境中
仅 Webhook URL 可见
可观测性
日志文件,黑盒
n8n 可视化 UI,全链路透明
调试效率
翻代码 + 猜逻辑
点开节点看输入输出
月度 Token 成本
~$45-90(GPT-4 级别)
$0
安全事故风险
高——一次泄露代价可能数万
低——凭据物理隔离

更直白地说:每月至少省 $50 Token 费,同时把安全风险从"随时可能爆炸"降到"基本不可能"。


更多实战场景

这个模式的适用范围远比你想象的广:

场景 1:客户邮件智能分类

用户发邮件 → n8n 接收 → OpenClaw 分析意图(投诉/咨询/合作)
    → n8n 根据分类结果:打 CRM 标签 + 转发给对应负责人 + 自动回复确认

Agent 只做"理解邮件内容"这一步(需要 LLM),后续操作全走 n8n 工作流。

场景 2:代码审查自动化

新 PR 创建 → n8n 监听 GitHub Webhook → 调用 OpenClaw 分析代码变更
    → n8n 根据分析结果:分配 Reviewer + 创建审查清单 + 设置截止提醒

场景 3:多平台内容同步

OpenClaw 生成文章摘要 → 调用 n8n 工作流
    → 同步发布到:Notion 数据库 + Twitter + Telegram 频道
    → 记录发布状态到 Google Sheets

三个平台的 API Key 都在 n8n 里,Agent 一个都看不到。

场景 4:异常监控告警链

监控系统检测到异常 → n8n 接收告警 → 调用 OpenClaw 分析严重程度
    → 严重:n8n 发企业微信/钉钉 + 创建 Jira Ticket + 电话通知值班人
    → 一般:n8n 发邮件汇总 + 记录日志

核心模式始终不变:AI 负责"需要智能的部分",n8n 负责"确定性的执行"。


四个必须避开的坑

坑 1:忘记锁定工作流

这是最常见也最危险的错误。Agent 通过 n8n API 创建工作流后,如果不锁定,它理论上也可以通过 API 修改工作流——比如偷偷改掉 Slack 消息的目标频道,或者删除审批节点。

规则:构建 → 测试 → 锁定。这三步必须形成闭环。

坑 2:Webhook URL 硬编码

不要把 URL 硬编码在 Agent 的 Skill 文件里。使用统一命名规则 openclaw-{service}-{action},让 Agent 通过规则动态拼接。这样新增集成时无需修改代码。

坑 3:什么操作都经过 Agent

如果一个操作是 100% 确定性的("收到事件 A → 必然执行 B",不需要 LLM 判断),那它根本不需要经过 OpenClaw。让 n8n 自己监听触发事件并直接执行。

OpenClaw 只在需要"理解"和"判断"的场景出场,别让它做流水线工人的活。

坑 4:忽略执行日志

n8n 自动记录每次工作流执行的完整输入/输出——这是免费的审计追踪。定期检查执行日志,能发现 Agent 的异常调用模式(比如突然高频调用某个 Webhook)。


总结:一个架构决策,三重收益

              ┌─────────────────────────────────────────┐
              │       OpenClaw + n8n 代理模式             │
              ├──────────────┬────────────┬──────────────┤
              │    安全收益    │   效率收益   │   成本收益    │
              ├──────────────┼────────────┼──────────────┤
              │  凭据完全隔离  │ 可视化调试   │  确定性操作   │
              │  工作流可锁定  │ 400+ 集成   │  零 Token    │
              │  审批门控     │  审计日志    │  月省 $50+   │
              │  Webhook 认证 │  黑盒→透明  │  安全风险↓↓   │
              └──────────────┴────────────┴──────────────┘

这个方案的本质是一个架构层面的关注点分离(Separation of Concerns):

  • • OpenClaw:理解意图 → 推理决策 → 触发执行(消耗 Token,但只做需要智能的事)
  • • n8n:管理凭据 → 编排流程 → 调用 API(不消耗 Token,做所有确定性的事)
  • • Webhook:两者之间的安全桥梁(只传业务数据,不传密钥)

别让你的 AI Agent 既当大脑又当钱包。把密钥锁进 n8n 的保险柜,让 Agent 专注于它真正擅长的事——思考。


相关资源

  • • n8n 官方文档:https://docs.n8n.io/
  • • n8n Webhook 节点文档:https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/
  • • openclaw-n8n-stack 一键部署:https://github.com/caprihan/openclaw-n8n-stack
  • • 灵感来源:Simon Hoiberg 关于 OpenClaw + n8n 模式的分享

觉得有用?点个「在看」转发给你的技术团队,安全问题早一天解决,就少一天提心吊胆。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-12 08:28:34 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/513194.html
  2. 运行时间 : 0.191835s [ 吞吐率:5.21req/s ] 内存消耗:4,628.09kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=2c20e48f1562ae1520382fb87713645b
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.80 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000944s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001412s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000691s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000618s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001325s ]
  6. SELECT * FROM `set` [ RunTime:0.000559s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001569s ]
  8. SELECT * FROM `article` WHERE `id` = 513194 LIMIT 1 [ RunTime:0.002842s ]
  9. UPDATE `article` SET `lasttime` = 1775953714 WHERE `id` = 513194 [ RunTime:0.003350s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.001449s ]
  11. SELECT * FROM `article` WHERE `id` < 513194 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001293s ]
  12. SELECT * FROM `article` WHERE `id` > 513194 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000974s ]
  13. SELECT * FROM `article` WHERE `id` < 513194 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.003150s ]
  14. SELECT * FROM `article` WHERE `id` < 513194 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001519s ]
  15. SELECT * FROM `article` WHERE `id` < 513194 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001680s ]
0.196964s