乐于分享
好东西不私藏

自由软件基金会下场:你不能用开源协议,来剥夺开源自由

自由软件基金会下场:你不能用开源协议,来剥夺开源自由
2026年3月,开源办公软件界炸了一个不大不小的瓜。
OnlyOffice,一家做开源办公套件的公司,公开指控 Nextcloud——它合作了8年的伙伴——违反了开源协议。
导火索是 Nextcloud 联合 IONOS、Proton 等欧洲公司,fork(分叉)了 OnlyOffice 的代码,做了个新项目,叫Euro-Office
中文圈铺天盖地的报道,标题几乎长一个样:

「Logo 成导火索,开源伙伴 OnlyOffice 和 Nextcloud 反目」

几乎所有报道都讲同一层故事:OnlyOffice 说 Euro-Office 移除了它的 Logo,违反了 AGPL 协议,于是终止合作。
听起来就是个"品牌署名"的小纠纷。
但这件事的真相,远比"Logo之争"硬核得多。
因为这根本不是两个 Logo 谁大谁小的问题。
这是开源世界一场关于「谁有权 fork」的根本性战争。而且最魔幻的是——
自由软件基金会(FSF),开源世界的"最高法院",亲自下场了。
它发了一篇博客,标题很直白:

《You cannot use the GNU (A)GPL to take software freedom away》(你不能用 GNU AGPL 来剥夺软件自由)

不是某个工程师的牢骚,是 FSF 的官方立场。

一、先把"Logo之争"这个误解澄清

中文圈普遍把争议简化成了"移除Logo"。
这只说对了表象。真正的法律争议,藏在 AGPLv3 协议的第7条里。
OnlyOffice 的代码用的是 AGPLv3 协议。这是一个比 GPL 更"严"的开源协议——任何使用、修改、分发代码的人,都必须公开自己的源代码
但 OnlyOffice 在 AGPLv3 的基础上,从 2021 年开始,加了一批附加条款(additional terms)。其中一条是:

任何 fork OnlyOffice 代码的项目,必须在显著位置标注 OnlyOffice 的原始作者身份。

OnlyOffice 说,Euro-Office 移除了这些标注,所以违反了协议。
Nextcloud 说,等一下——你这个附加条款本身,可能就是无效的
这才是真正的战场。

二、为什么"附加条款"成了战场?

要理解这一点,得回到 AGPLv3 协议本身的设计。
AGPLv3 第7条允许版权所有者添加附加条款,但有一个硬性限制:附加条款不能限制 AGPLv3 已经授予的自由
而 AGPLv3 授予的核心自由是什么?

任何人都可以使用、研究、修改、分发代码。

Nextcloud 的律师团队仔细审查了 OnlyOffice 代码库里的协议条款后,得出的结论是:

OnlyOffice 的附加条款「互相矛盾」,实际上让一个合规的 fork 几乎不可能被创建出来

说白了:你嘴上说是开源的,但加了一堆条款,让别人 fork 你的代码时寸步难行——这还叫开源吗?
Nextcloud 在官方回应里说得很直接。他们承认 fork 了 OnlyOffice,也解释了移除了哪些内容、为什么移除。核心论点是:
强制保留品牌标识,等于在开源代码里设置"专有陷阱",损害了开源的四大基本自由——运行、研究、修改、分发。

三、自由软件基金会下场:这不是你说的那个意思

故事到这里,还只是两家公司的口水仗。
但接下来发生的事,让整个事件的性质变了。
自由软件基金会(FSF),开源世界的"最高法院",罕见地发了一篇博客。
博客的作者,是 FSF 负责许可与合规的Krzysztof Siewicz。标题很直白:

《You cannot use the GNU (A)GPL to take software freedom away》(你不能用 GNU AGPL 来剥夺软件自由)

FSF 在博客里讲清了一个关键的法律点——而这,正是整个事件的命门。

FSF 的核心论证

AGPLv3 的第7条,确实允许版权方添加附加条款。但这条法律同时规定了一个出口:

被许可人,可以移除任何构成"进一步限制"的附加条款

FSF 据此给出的立场非常明确:
如果附加条款构成了对 AGPLv3 已授予权利的"进一步限制",那么它本身就是可以被删除的——你不能用一个本意是保护自由的协议,反过来限制自由。
FSF 没有直接下判决说 OnlyOffice 违法。但它的态度,明显倾向 Euro-Office 一侧。
因为 FSF 论证的,恰恰就是 Euro-Office 想做的:移除那些他们认为「构成进一步限制」的品牌标识要求。
不过这里有一个细节:据 OnlyOffice 4月的公开信,他们曾在 4月6日向 FSF 正式请求澄清 AGPLv3 第7条的解释——至今没有收到回复。FSF 转头发了这篇倾向 Euro-Office 的博客,但对一方的正式问询保持沉默。
「最高法院」不听一方陈述就发表倾向性意见——这个程序瑕疵,让 FSF 的公正性打了折扣。
在开源世界,FSF 的博客,相当于最高法院的判例意见。它的态度,会影响整个社区怎么看这件事。

一个值得说的细节

AGPL 所在的 GNU 许可证家族,主要设计者是Richard Stallman(RMS)——自由软件运动的创始人,也是 FSF 的创办者。
虽然 Stallman 本人在 OnlyOffice 事件中没有公开发表看法,但 FSF(他创办的机构)的这篇博客,某种程度上代表了 GNU 许可证"设计方"的立场——
我们设计 AGPL,是为了保护自由,不是为了让你拿去限制别人。
这个对峙的画面,比任何"Logo之争"都有冲击力。
Euro-Office 不是 Nextcloud 一家的事。它是 Nextcloud、IONOS、Proton 等一批欧洲科技公司的联合项目,打着「欧洲数字主权」的旗号——欧洲想摆脱对外部软件的依赖,做自己的办公套件。(至于这个"欧洲血统"站不站得住,后面会讲到。)
至于 OnlyOffice 的开发商 Ascensio System,它的公司背景、注册地,网上有公开信息,这里不做展开——真正值得关注的,是协议本身。

四、OnlyOffice的反击:把协议改得更严

面对 Nextcloud 的反击和 FSF 的警告,OnlyOffice 怎么做的?
它没有松口。
2026年5月,OnlyOffice 发布了 9.4 版本。新版本里,它把那些附加条款改得更严了——明确要求任何 fork 都必须「在显著可见的位置」标注 OnlyOffice 为原始开发者。
但 OnlyOffice 并不是纯在赌气。早在 4 月,它就发了一封公开信,提了一个三件套方案:界面上加「关于」页面标注源头、源代码文件里保留署名、公开场合别假装原创。它说,这不是限制 fork,是让用户知道软件到底从哪来的——「透明、署名、尊重用户」。
不过,从 3 月的初次指控,到 5 月的协议收紧,OnlyOffice 的动作确实在逐步升级。
社区的解读很一致:这是报复性收紧
Reddit 上 r/linux 和 r/libreoffice 的讨论几乎一边倒地批评 OnlyOffice,有人直言:

"他们(OnlyOffice)是 butthurt(恼羞成怒),因为自己被 fork 了。他们根本不懂开源 fork 是怎么运作的。"

YouTube 上甚至有视频标题叫:"They Forked OnlyOffice... And Now Everything is Falling Apart"(他们 fork 了 OnlyOffice……现在一切都塌了)。
一个 GitHub Issue(#2303)标题更尖锐:"AGPL license has impossible terms"(AGPL 的条款根本不可能满足)。
社区的态度已经很明显了:开源世界,不站在 OnlyOffice 这边

五、反转:Euro-Office 的欧洲血统,被代码分析扒了

故事如果停在这里,是 OnlyOffice 在开源社区面前节节败退。
但 6 月,Cybernews 做了一件事——把 Euro-Office 的代码库扔进了分析工具
结论让人有点尴尬。
Euro-Office 号称「欧洲数字主权」项目,但代码分析显示:
98.6%
的文档引擎代码,来自俄语时区开发者
99.2%
的实时服务组件,同上
欧洲贡献的代码,占0.5%
项目总共只有184 处原创改动,却从 OnlyOffice 反向了导入了370 处改动
更微妙的是:从 OnlyOffice「分裂」之后,它还在持续拉取 OnlyOffice 的新代码
Cybernews 的原话很直接:

「最大的问题之一是,代码从某个未知云资源拉了一个 Android bundle——没人知道里面有什么、谁控制的、会不会随时被改。」

dev.ua 的标题更狠:「俄罗斯足迹出现在欧洲版 Microsoft Office 替代品中」。
这不是恶意攻击。这是 git log 和时区数据。
一个主打「去俄罗斯化」的欧洲主权项目,核心代码几乎全在俄语时区写的。你可以说开源无国界——但当你的官方宣传主打地缘叙事的时候,代码里的事实会让你很尴尬。
Euro-Office 的回应是:这次 fork 是「最后手段」,他们正在审查、清理、公开代码库。
但这回答本身就说明问题了——你 fork 了别人,改了个名字,然后告诉大家「我们正在清理」。那清理之前,它到底是什么?
这层反转,让整个 Fork Wars 多了一层荒诞感。不是坏人打好人,不是协议之争非黑即白。是每一方,都被代码仓库里的事实,打了脸。

六、这事的真正问题:开源协议能不能反过来限制开源?

把镜头拉远,你会发现 OnlyOffice Fork Wars 触及的是一个根本性问题
开源协议,能不能被版权方用来反过来限制开源?
AGPLv3 第7条本来是一个"平衡设计"——既给版权方一些灵活性(可以加附加条款),又保护用户的基本自由(不能限制已授予的权利)。
但 OnlyOffice 的事说明,这个平衡是脆弱的。一个足够聪明的版权方,可以在"附加条款"里塞进足够多的东西,让 fork 在事实上变得不可能——同时嘴上还说着自己是开源的
这就是 dev.to 那篇综述(《Open Source in 2026: The Fork Wars Are Getting Ugly》)的判断:

2026 年的 fork wars 正变得越来越难看。

OnlyOffice 不是孤例。它是这个趋势里最显眼的一个。

七、写给你

如果你是程序员,大概率你的项目依赖里,躺着几百个 AGPL/MIT/Apache 协议的开源包。
你大概从没仔细读过它们的附加条款。
OnlyOffice Fork Wars 给所有用开源、做开源的人提了个醒:
「开源」两个字,不等于"随便用"。
一份开源协议里藏着多少附加条款,决定了它到底有多"自由"。而版权方,永远有动机在协议里多塞一点自己的利益。
下次你 fork 一个 AGPL 项目之前,建议先把第7条的附加条款读完。
别等被指控了,才发现自己 fork 出了一个雷。

写在最后

这个故事最有戏剧性的地方,不在 OnlyOffice 和 Nextcloud 谁赢谁输。
而在那个画面:
FSF——AGPL 所在的 GNU 许可证家族的"管家"——不得不站出来说:你不能这么用。
我们设计 AGPL,是为了保护自由。
现在有人拿它来限制自由,而我们要说:不。
开源世界的内战,往往就是这么打起来的。
不是外人打进来的。
是自己人,对规则的理解,出现了分歧。
而这一次,"裁判"亲自下场了。
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-24 20:58:20 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/790574.html
  2. 运行时间 : 0.223780s [ 吞吐率:4.47req/s ] 内存消耗:4,623.19kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=0dab3e4bc17b2625897dc9ea927e18e8
  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.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000967s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001890s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.001753s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.002021s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001824s ]
  6. SELECT * FROM `set` [ RunTime:0.000665s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001557s ]
  8. SELECT * FROM `article` WHERE `id` = 790574 LIMIT 1 [ RunTime:0.003735s ]
  9. UPDATE `article` SET `lasttime` = 1782305900 WHERE `id` = 790574 [ RunTime:0.007425s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000701s ]
  11. SELECT * FROM `article` WHERE `id` < 790574 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001289s ]
  12. SELECT * FROM `article` WHERE `id` > 790574 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001153s ]
  13. SELECT * FROM `article` WHERE `id` < 790574 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.007244s ]
  14. SELECT * FROM `article` WHERE `id` < 790574 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000882s ]
  15. SELECT * FROM `article` WHERE `id` < 790574 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000741s ]
0.225605s