乐于分享
好东西不私藏

OpenClaw + ROS 2 很火,但机器人控制最关键的不是模型,而是边界

OpenClaw + ROS 2 很火,但机器人控制最关键的不是模型,而是边界

如果你最近在看具身智能、机器人 Agent、自然语言控制机器人,应该已经注意到一个越来越常见的组合:OpenClaw + ROS 2

这套东西真正值得关注,不是因为“给机器人接了个聊天框”,而是因为它开始尝试把大模型放进真实的机器人软件栈。

结合 OpenClaw 官方文档、ROSClaw 论文,以及 ros2_control、Nav2、MoveIt 2、rosbridge 的资料来看,结论其实很明确:

OpenClaw 很适合做机器人的自然语言入口和 Agent 编排层,但绝对不适合直接下沉到底层控制。

模型可以理解“去厨房”“把杯子拿过来”“退后 20 厘米”。但它不该直接决定每一个电机这一毫秒该怎么转。

真正要解决的问题,从来不是“AI 能不能控机器人”,而是:如果你真的要把 OpenClaw 通过 ROS 2 用到机器人上,怎样做才更安全、更精确、效果也更好。

先说结论

先把最重要的判断放前面。

一句话结论:让 OpenClaw 负责理解,让 ROS 2 负责执行,让中间层负责否决。

拆开来说,正确的分工应该是:

  • OpenClaw 负责理解用户意图、拆解任务、选择能力、组织反馈
  • ROS 2 负责真实执行、实时控制、限幅、回退和安全约束
  • 中间必须有一层“执行前验证”的桥接层,不能让模型直接碰总线和驱动

如果没有这层中间层,所谓“自然语言控制机器人”就很容易从 Demo 变成事故生成器。

原因不复杂:大模型擅长的是意图理解和高层决策,而机器人执行要求的是实时、确定、可验证、可回退。这两者不是一回事。

为什么 OpenClaw + ROS 2 值得关注

先看最新项目状态。

OpenClaw 官方仓库 到 2026 年 4 月初已经是一个非常活跃的项目,GitHub 页面显示约 34.7 万 Star。从 官方 Getting Started 文档 来看,它的定位很清楚:这是一个运行在你自己的设备上的 AI Assistant 框架,负责多通道接入、会话、工具调用、技能编排和 Gateway 管理。

官方给出的最短安装路径大概是这样:

curl -fsSL https://openclaw.ai/install.sh | bashopenclaw onboard --install-daemonopenclaw gateway status

另一边,ROSClaw 项目 则是在做一件更有意思的事:把 OpenClaw 接到 ROS 2。

它的 README 里把数据链路写得非常清楚:

这条链路很关键。

因为它说明这件事不是“模型 SSH 上机器人直接乱发命令”,而是通过 RosClaw 插件 + rosbridge_server + ROS 2 标准接口 接入机器人软件栈。这个方向之所以值得认真看,就是因为它天然比“模型直连底层控制”更可治理。

更值得注意的是,ROSClaw 论文 在 2026 年 3 月 27 日提交到 arXiv,摘要里明确强调了四个核心设计:

  1. 动态能力发现
  2. 多模态观测归一化
  3. 执行前动作校验
  4. 结构化审计日志

如果你做过机器人系统,就会知道这四件事其实是在说同一句话:

别让模型裸奔。

真正合理的架构,不是“AI 直接控机器人”

如果你准备把这套方案做成一个真正能跑的系统,我建议采用四层架构。

第一层:OpenClaw 只做入口和编排

OpenClaw 最适合负责这些事情:

  • 接收来自微信、Telegram、Slack 等通道的自然语言指令
  • 结合上下文理解用户到底要机器人做什么
  • 选择应该调用哪个机器人能力
  • 把结果、状态和失败原因再组织成人能看懂的话返回给用户

这一层像一个“理解器”和“协调器”。

它不该是实时控制器。它也不该直接连电机、驱动或者底层总线。

第二层:RosClaw 或自定义插件负责语义翻译

根据 ROSClaw README,当前可用的能力包括:

  • ros2_publish
  • ros2_subscribe_once
  • ros2_service_call
  • ros2_action_goal
  • ros2_param_get/set
  • ros2_list_topics
  • ros2_camera_snapshot

这里我要非常明确地说一句:

不要把这些底层原语原封不动地交给大模型。

这不是哪份文档里的原话,这是我基于 OpenClaw、ROSClaw、rosbridge、Nav2 和 MoveIt 2 的边界分析之后给出的工程建议。

原因很简单。像 ros2_publish 这种能力太强了,它几乎等于“模型可以向任意 topic 发任意消息”。而 rosbridge_suite 官方仓库 也说明了,它本质上就是一个让外部系统通过 JSON 去发布、订阅、调 service 的桥。

如果你追求的是安全和精度,真正应该暴露给模型的,不是这些底层能力,而是高层能力面,例如:

  • navigate_to_named_place(name)
  • move_base_relative(x, y, yaw)
  • pick_object(object_id)
  • dock_to_charger()
  • read_battery()
  • emergency_stop()

这两种设计的区别非常大。

前者是把总线权限交给模型。后者是把任务语义交给模型。

我会毫不犹豫地选后者。

第三层:ROS 2 执行层负责真实控制

真正碰执行链路的,应该是 ROS 2 那一层。

移动机器人,优先交给 Nav2。机械臂,优先交给 MoveIt 2 或 MoveIt Servo。底层硬件和关节控制,则统一收敛到 ros2_control

ros2_control Controller Manager 文档 里有两个参数特别值得注意:

  • fallback_controllers
  • enforce_command_limits

前者的意义是,主控制器出问题时,可以自动切换到回退控制器。后者的意义是,系统会根据 URDF 里的 joint limits 去强制裁剪命令。

这两个能力看起来不花哨,但在 AI 控机器人这个问题上,它们非常重要。

因为它们代表的是:即便上层做错了,下层也不至于完全失控。

第四层:硬件安全层做最终兜底

这一层千万别省。

Nav2 Collision Monitor 文档 明确说过,它能提供额外的近场防撞能力,但它不是硬实时安全认证方案

这意味着什么?

意味着软件层的防撞、限速、停障都很有价值,但它们不能替代:

  • 硬件急停
  • 电源或驱动级急停回路
  • 安全雷达或安全光幕
  • 人机混行场景下的物理隔离
  • 分区限速和禁行区

如果你的机器人真的要进办公室、仓库、展厅或者实验室,最后替你兜底的,一定不能只有提示词和软件逻辑。

怎么落地,才不会一开始就走歪

我建议按下面这个顺序来搭。

第一步:先把 OpenClaw 单独跑通

先按照官方文档把 OpenClaw Gateway 跑起来。

从官方资料和 ROSClaw README 来看,优先使用 Node 24 会更省心,因为两边的环境要求更容易对齐。

这一阶段先只验证三件事:

  • 会话和 Agent 是否正常
  • 工具调用链路是否正常
  • Gateway 是否稳定

别一开始就把它接进群聊,更别一开始就给真机器人权限。

第二步:先接仿真,不要先接真机

ROSClaw README 给出的最短演示路径很直接:

pnpm installpnpm buildcd dockerdocker compose up

这会拉起 ROS2 + rosbridge + Gazebo。然后把 OpenClaw 配到 ws://localhost:9090

这一阶段最重要的不是“演示酷不酷”,而是看三件事:

  1. 模型会不会选错工具
  2. 工具会不会把参数映射错
  3. 执行后的反馈能不能再被模型正确理解

很多系统在 Demo 时看起来没问题,一上真机就露馅,问题往往就出在这里。

第三步:从“开放总线”收缩到“安全能力面”

这一步很容易被忽略,但它往往最决定系统最后是“能演示”还是“能落地”。

研究型项目为了灵活,通常会开放很多通用能力。但生产型系统最忌讳的,恰恰就是“太自由”。

一个移动机器人的首版能力面,我建议尽量收缩到这几个:

  • 导航到已命名地点
  • 在相对坐标内微调
  • 读取当前位姿
  • 读取电量
  • 获取一张当前画面
  • 停车
  • 急停

不要一上来就给:

  • 任意 topic publish
  • 任意 parameter set
  • 任意 service call
  • 任意脚本执行

功能越自由,调试时越爽。但事故概率也会一起涨。

第四步:把模型输出改成结构化任务

如果你真的在乎精度,就不要让模型输出一段模糊的自然语言,再让下游去猜。

更好的方式,是要求模型输出结构化任务,比如:

{"task""navigate_to_pose","target_frame""map","x"2.15,"y"-0.84,"yaw"1.57,"max_linear_speed"0.25,"safety_mode""indoor_human_shared"}

这样做的价值非常现实:

  • 单位清楚
  • 参数边界可以校验
  • 任务意图可以审计
  • 出问题时可以回放

这也和 ROSClaw 论文 里强调的执行前验证、结构化日志高度一致。

安全这件事,不能只靠提示词

很多团队一碰到 Agent 控机器人,第一反应就是“把 system prompt 写严谨一点”。这当然有帮助,但远远不够。

OpenClaw 官方安全文档 说得很清楚,真正的安全约束来自:

  • tool policy
  • 执行审批
  • sandbox
  • channel allowlist

换到机器人场景里,我认为至少要补上四层约束。

1. 把 Gateway 暴露面缩到最小

官方文档明确建议:

  • gateway.bind: "loopback" 默认只允许本机访问
  • 非 loopback 绑定会扩大攻击面
  • 不要把未认证 Gateway 直接暴露到 0.0.0.0
  • WebSocket 要启用 token 或 password

这件事在机器人场景里尤其重要,因为一旦 Gateway 暴露过大,你失去的不只是聊天权限,而是现实世界里的行动权限。

所以更稳妥的做法是:

  • 开发阶段只允许本机访问
  • 远程调试优先走内网或 Tailscale
  • 不直接暴露公网
  • 多用户场景做会话隔离

官方还建议多人 DM 场景使用 session.dmScope: "per-channel-peer" 之类的会话隔离策略。这个点放到机器人控制里,我认为几乎是必需的,因为你绝不希望不同用户的上下文彼此污染。

2. 把高风险工具隔离出去

OpenClaw 文档对 execbrowserweb_fetchweb_search 这类工具的风险提示是很明确的。

这件事放到机器人里,最合理的策略是:

  • 负责控机器人的 Agent 只保留机器人相关工具
  • 网页检索、文档阅读、代码执行,拆给独立的只读链路
  • 不要让同一个 Agent 既能上网找资料,又能直接给机器人下动作

这不是形式主义,而是在降低“模型被外部内容污染后直接影响真实执行”的概率。

3. 在 ROS 2 执行前做第二次约束

这层约束至少应该包括:

  • topic、service、action 白名单
  • 参数 schema 校验
  • 速度上限
  • 加速度和角速度上限
  • 地图边界检查
  • 禁区检查
  • 高风险任务黑名单

举个最简单的例子:“后退 5 米”在空旷仓库可能没问题,但在办公室里,大概率就不合理。

所以更好的做法,不是让模型自己判断环境,而是在工具层直接拒绝不符合规则的动作。

4. 对危险动作启用人工确认

不是所有动作都该自动执行。

下面这些动作,我建议默认都走人工确认:

  • 长距离移动
  • 机械臂抓取
  • 靠近人机混行区
  • 靠近门、电梯、玻璃或楼梯
  • 修改运行参数
  • 切换控制模式

真正好的体验,不是“AI 什么都自己干”,而是“AI 先把计划说清楚,再由人确认要不要执行”。

想要精确,关键不是让模型更聪明

很多人对“精确”的理解,还停留在“换个更强的大模型”。

但在机器人控制里,精确的核心通常不是模型大小,而是控制分工是否正确

我的建议非常简单:

  • 大模型负责高层目标
  • 控制器负责闭环控制
  • 传感器负责反馈修正

移动机器人:优先走 Nav2 action,不要迷恋 cmd_vel

ROSClaw README 里展示过两类典型能力:

  • 用 /cmd_vel 做相对运动
  • 用 Nav2 goal 做到点导航

如果是做演示,两种都可以。如果你在乎稳定性,我会更推荐 Nav2 action。

原因很简单:直接发 cmd_vel 更像手搓遥控;而给 Nav2 一个目标,等于是把路径规划、局部避障、速度控制交给成熟导航栈。

这通常会更稳,也更容易叠加安全能力。

同时,把 Nav2 Collision Monitor 打开。它不是认证级安全方案,但对于近场减速和刹停非常实用。

机械臂:优先走 MoveIt 2 / MoveIt Servo,不要裸发关节命令

MoveIt Servo 官方文档 明确提到,它支持奇异点检查、碰撞检查、平滑和关节速度限制,而且在接近奇异点或碰撞时会降低速度。

这就是为什么我不建议让 OpenClaw 直接生成一串关节角度命令。

更合理的分工应该是:

  • 模型提出末端目标或抓取目标
  • MoveIt 做 IK、碰撞检查和轨迹规划
  • Servo 做实时伺服和限速
  • ros2_control 做最终命令裁剪和执行

这么分层,精度通常会比“模型直控关节”高很多,风险也会小很多。

想让整体效果更好,必须把反馈链路做完整

机器人场景里,“效果好”不是指它看起来很聪明,而是指它在真实环境里不容易飘。

根据 ROSClaw 论文,这套方案强调多模态观测归一化和结构化审计日志。我非常认同这一点,因为机器人一旦脱离反馈,系统马上就会从“会做事”退化成“会说话”。

我建议至少做三件事。

1. 每次执行都记录前态、动作、后态

比如一条“去充电桩”的命令,不要只记录 action 发没发出去,而要记录:

  • 执行前位姿
  • 执行前电量
  • 下发目标
  • 执行过程关键反馈
  • 最终位姿
  • 是否进入充电状态

只有这样,下一轮推理才有真实世界上下文。

2. 给模型看的不是 topic 洪流,而是状态摘要

原始 ROS topic 太碎,也太吵。

真正好用的机器人 Agent,通常会在中间层先做一次状态压缩,比如:

  • 当前位置:会议室门口
  • 导航状态:已到达
  • 机械臂状态:空闲
  • 电量:27%
  • 前方 0.6 米有动态障碍

这比把几十个 topic 原样塞给模型有效得多。

3. 让失败变得可解释

如果动作失败,系统不该只说一句“执行失败”。

它至少应该能说明:

  • 是规划失败,还是控制失败
  • 是目标不可达,还是安全层拒绝
  • 是地图越界,还是电量不足
  • 是碰撞风险,还是控制器异常

很多时候,用户觉得系统“聪不聪明”,不是看成功时它说得多漂亮,而是看失败时它能不能把原因讲清楚。

一套我认为更靠谱的组合

如果你问我,2026 年 4 月这个时间点,怎么把 OpenClaw 和 ROS 2 组合起来更靠谱,我会给出下面这套建议。

推荐组合

  • OpenClaw 负责多通道接入、会话和 Agent 编排
  • RosClaw 负责 OpenClaw 到 ROS 2 的桥接
  • rosbridge_server 只在受控网络里开放
  • Nav2 负责移动机器人高层导航
  • MoveIt 2 / MoveIt Servo 负责机械臂规划与伺服
  • ros2_control 负责硬件接口、命令限幅和回退控制器
  • Collision Monitor 负责额外的近场防撞
  • 硬件急停和安全传感器负责最终兜底

不推荐组合

  • 让模型直接控制底层驱动
  • 把 ros2_publish 向所有 topic 全开放
  • 让同一个 Agent 同时拥有上网、执行 shell、控机器人三类高风险能力
  • 没有仿真验证就直接接真机
  • 只靠提示词做安全

我最后的判断

我认为 OpenClaw + ROS 2 这条路值得认真投入。

因为它终于开始把“大模型会说话”和“机器人能安全做事”拆成两个系统问题,而不是硬糊在一起。

尤其是 ROSClaw 论文里强调的 executive layer 思路,我觉得非常关键。机器人 Agent 真正缺的,从来都不是一个更花哨的聊天界面,而是一个介于模型和执行器之间、能做约束、验证、审计和回退的中间层

如果你只想做一个看起来很酷的视频,事情不难。但如果你想做一个能真正进入办公室、仓库、展厅或者实验室的系统,那就别让模型直接碰电机。

这不是保守,这是工程。

参考资料

  1. OpenClaw GitHub: https://github.com/openclaw/openclaw
  2. OpenClaw Getting Started: https://docs.openclaw.ai/start/getting-started
  3. OpenClaw Security: https://docs.openclaw.ai/gateway/security
  4. ROSClaw GitHub: https://github.com/PlaiPin/rosclaw
  5. ROSClaw 论文: https://arxiv.org/abs/2603.26997
  6. rosbridge_suite GitHub: https://github.com/RobotWebTools/rosbridge_suite
  7. ros2_control Controller Manager 文档: https://control.ros.org/rolling/doc/ros2_control/controller_manager/doc/userdoc.html
  8. Nav2 Collision Monitor 文档: https://docs.nav2.org/configuration/packages/collision_monitor/configuring-collision-monitor-node.html
  9. MoveIt Servo 文档: https://moveit.picknik.ai/main/doc/examples/realtime_servo/realtime_servo_tutorial.html
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-05 14:28:36 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/498697.html
  2. 运行时间 : 0.092893s [ 吞吐率:10.77req/s ] 内存消耗:4,808.21kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=e2992464f159c8c8455b5d64f3248c5a
  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.000536s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000789s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000340s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000255s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000508s ]
  6. SELECT * FROM `set` [ RunTime:0.000218s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000534s ]
  8. SELECT * FROM `article` WHERE `id` = 498697 LIMIT 1 [ RunTime:0.000524s ]
  9. UPDATE `article` SET `lasttime` = 1775370516 WHERE `id` = 498697 [ RunTime:0.004108s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000252s ]
  11. SELECT * FROM `article` WHERE `id` < 498697 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000482s ]
  12. SELECT * FROM `article` WHERE `id` > 498697 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000563s ]
  13. SELECT * FROM `article` WHERE `id` < 498697 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000611s ]
  14. SELECT * FROM `article` WHERE `id` < 498697 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000681s ]
  15. SELECT * FROM `article` WHERE `id` < 498697 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.004703s ]
0.094679s