乐于分享
好东西不私藏

以开源软件无罪抗辩第一案为例探析知产首案办理四方略(下篇):建构本土化的适用逻辑及出罪(抗辩)体系

以开源软件无罪抗辩第一案为例探析知产首案办理四方略(下篇):建构本土化的适用逻辑及出罪(抗辩)体系

专栏

活动

快讯

产品

解读

沈浩、陈洁丨安杰世泽律师事务所

开源协议和开源软件在我国产业界并非新鲜事物,但在司法领域中逐步被接受还是近年之事。本文以我国开源软件无罪抗辩第一案为例,来探析知识产权首案办理的应对方略,大致包括如下的司法路线图:

● 锚定辩护者(或当事人)困境问题

● 把握裁判者司法认知

● 我国现行法下探寻适用逻辑(现行法解释之扩张)

● 建构本土化的出罪(抗辩)体系,即建构本土化、可落地的司法方案

三、我国现行法下开源软件抗辩的适用逻辑

虽然我国司法实践已逐步形成认可开源协议具备强制力的审判惯例,但对于开源协议为何具有司法强制力,为何可以作为司法大前提,以及开源软件抗辩在我国法律上为何被采纳等问题,仍存在争议与待厘清之处。

在办理无罪抗辩第一案时,我国唯一涉及到“开源”的政府或司法的规范性文件是国务院于2017年11月19日出台的《关于深化“互联网+先进制造业”发展工业互联网的指导意见》。该文件规定:“面向关键技术和平台需求,支持建设一批能够融入国际化发展的开源社区,提供良好开发环境,共享开源技术、代码和开发工具。规范和健全中介服务体系,支持技术咨询、知识产权分析预警和交易、投融资、人才培训等专业化服务发展,加快技术转移与应用推广”。但是该产业政策文件不具有司法适用效力,也未成为开源协议的强制力的法律依据。

澳大利亚国立大学的彼得•德霍斯教授在其名作《知识财产法哲学》中提出,商标法、专利法和版权法等知识财产广泛地体现了财产独占论信念。[1]二十一世纪知识社会的典型现象是,“越来越多的群体将会围绕某种形式的积极知识共有组织起来,以此作为保护该群体中各个个体的自由和财产的一种形式”。[2]他认为自由软件出现的现象是他所推崇的积极共有知识的一个实例。开源的授权就相对于社会对积极共有所做出的一种认同机制。在这种机制下,所有共有者约定任何人不能阻止源程序的传播,而且源程序的升级版本必须在群体内共有。德霍斯教授认为,鼓励积极知识共有的社会比那些不鼓励积极知识共有的社会更具有竞争力和发展前景。诸如Linux和Apache这些开放性源代码产品就是自由软件运动的积极共有所产生的结果,也正是这些产品对微软的垄断地位构成了强烈的竞争态势。[3]然而,德霍斯教授分析得出的这种积极共有知识的财产法哲学,对于理解开源软件法律现象以及面向未来的立法论具备法理基础意义,但不能解决一国法前提下的进行开源协议本土法法律适用的大前提之证成。

开源协议具有本国法的司法强制力之问题,无法从现行立法、公法学层面得以解决,唯一的出路在于“私法自治”。GPL协议、Apache协议和BSD协议等的名称都称为“许可证协议”。这些开源许可证协议在本质上仍然属于知识产权许可(知识产权交易形态)范畴。“若肯定人民有‘私法自治’之权利,则在‘契约自由原则’之下,人民以缔结契约之方式将自己之智慧财产权交由他人实施时,对于订约之对象,契约之内容及方式等,皆可享有相对大之自主决定权”。[4]谢铭洋教授分析认为,智慧财产权授权契约之特征既与民法上之有名契约不付,不应勉强归入某一契约类型而造成不当之结果;其为经济发展过程中,随着交易之需要而发展出来之新的独特之契约类型。[5]进而言之,开源许可证协议是知识产权部门法上的非典型许可协议,更是无名合同。开源协议本土法法律适用的法理基础在于私法自治和契约自由原则。

开源软件本身是有版权的。在GPLv3开源许可证的preamble(前言)载明:′Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it.′FSF官网′What is Copyleft?′文章提到,所谓Copyleft是指任何人都可以重新分发软件,不管有没有进行修改,但必须同时保留软件所具有的自由特性。[6]

开源协议与商业许可协议并不是互斥的。开源软件从最初的自由软件遵循的GPL许可证开始慢慢转化,越来越宽容的与商业软件共存,而正是由于不同开源软件许可证开放程度的不同,才不能对开源软件一视同仁,GPL许可证只是其中最为典型的一种。[7]在对MySQL软件的授权许可上,MySQL AB采取“双重许可”(dual licensing)的运作模式,即同时提供两种授权方式让MySQL用户选择:第一种是基于GIP授权协议,用户可以随便使用与修改的源代码,但是,如果用户要分发他修改过源代码的软件的话,必须按照GPL原则公开其源代码;第二种授权协议是“非GIP商业授权”,用户付给MySQL AB一笔费用,从而可以修改和分发自己版本的MySQL而不需要公开源代码。[8]

法系比较上的参考,最具启发性的域外案例是德国法兰克福地区法院第六民事审判庭审理的影响较大的Welte诉D-Link一案。该案集中展示了德国法院对违反开源软件许可证的定性,该案中被告在对外出售数据存储器时,没有满足GPL开源许可证。德国法兰克福地区法院认为,根据《德国民法典》第305条第1款第1句,GPL开源许可证条款的法律性质是特定的一般交易条款,即预先拟定,由著作权持有人向软件程序使用人提出的合同条款。同时,根据《德国民法典》第151条的规定,开源软件程序著作权持有者无需接受使用人的承诺声明,双方即可构成法律关系;从而认定了开源软件许可证具有法律效力。法院认为,基于开源软件GPL许可证下的许可条件可视为符合《德国民法典》第305条第2款的一般交易条款而成为合同组成部分。由于履行开源义务并没有不适当地损害使用人的利益,该格式条款是有效的。[9]

美国Artifex Vs. Hancom案对违反开源软件许可协议作出定性。被告辩称之一就是,GNU GPL许可证并不构成合同,因为被告从未签署过,双方未达成合意,因此不存在合同关系。加利福尼亚北部地区法院的杰奎林·斯科特·科利法官驳回了被告的主张并指出:针对违约主张,原告软件的许可模式共有两种,既然被告未购买商业许可证,就意味着其不属于根据商业许可证进行的软件修改、传播等,而是根据GNU GPL许可证在使用涉案软件。被告未支付商业许可费,导致原告不能获得商业许可费的收益,又未遵循GNU GPL许可证的要求,弱化了其后续根据公共软件制度进行软件研究与开发的能力,给原告带来了损害,因此原告有权主张被告的行为构成合同违约。[10]

类似于《德国民法典》第305条定型化条款,开源协议在中国法上存在着相对应的制度即《民法典》第496条的格式条款。开源软件抗辩的法律强制力适用逻辑应当建立于权利人受到合同义务的拘束,开源协议构成中国法上的格式合同。而且,开源义务人就是前手开源代码的纯粹受益人,因此并不存在格式条款无效的问题(不适用《民法典》第497条)。在德国Welte诉D-Link案中,履行开源义务并没有不适当的损害使用人的利益,《德国民法典》第305条定型化条款当然有效。在美国Artifex Vs. Hancom案中法官认为,被告未购买商业许可证、又未遵循GNU GPL许可证的要求,被告的行为构成合同违约。

除上述开源协议本身在我国司法具备法律强制力之外,开源获取作为事实行为在商业秘密案件中是另一项本土化法律证成的分析内容。开源获取包括从公开领域获取已经公开开源的软件,以及研发人或用户等人基于开源软件之性质从前手版权人处直接获取。由于公共领域已经有了源代码供他人下载,前者直接可适用公知信息抗辩,并不能成为法律难题。本文需分析的是狭义的开源获取,指的是后者。

反不正当竞争法不是财产保护法,而是行为规制法。“权利人并不具有商业秘密保护中排他的独占权,商业秘密保护只是禁止他人采用不正当手段或者违反合同约定获取、披露、使用、允许他人使用其商业秘密”。[11]商业秘密是一种相容性的财产权,任何人都可以通过正当的途径合法取得同一信息,多个持有人可同时享有独立的、完全受到同等保护的权利。[12]WIPO和WTO对商业秘密都没有使用“所有人”(owner)的提法,均表述为“信息的合法控制人”(the person lawfully in control of the information),WTO还简称为“合法持有人”(the right holder)。[13]反不正当竞争法审视信息来源的道德合理性,“接触信息的人并非是天然的非法者”,“法律干预的是:信息以何种方式被接触,接触者对秘密信息是否滥用或者有滥用的可能”。严格说,“所谓商业秘密的反不正当竞争法保护,实则是反对不正当的信息接触和不正当地滥用所接触的信息,而非反侵犯商业秘密财产权”。[14]

合法取得抗辩是一种基于事实行为的抗辩,法律性质上属于不构成侵权抗辩。合法取得的事实行为,在理论上可以从“反向工程、独立开发、接受其他商业秘密许可、通过观察公开使用或公开展出的产品或公开出版物等渠道”获取。[15]从我国法律规定来看,关于合法取得的事实行为抗辩,新旧司法解释作出了不同的规定。《最高人民法院关于审理不正当竞争民事案件应用法律若干问题的解释》(法释〔2007〕2号,现已废止,以下简称“旧反不正当竞争司法解释”)第十二条规定“通过自行开发研制或者反向工程等方式获得的商业秘密,不认定为……侵犯商业秘密行为”。在《最高人民法院关于审理侵犯商业秘密民事案件适用法律若干问题的规定》(法释〔2020〕7号,现行有效,以下简称“新商业秘密司法解释”)中,第十四条规定“通过自行开发研制或者反向工程获得被诉侵权信息的,人民法院应当认定不属于……侵犯商业秘密行为”。由此可见,新商业秘密司法解释把合法取得严格限定为“自行开发研制”“反向工程”两种,删除了旧反不正当竞争司法解释条文曾规定的“等方式”。如此来看,现行法的合法取得不仅否定了理论上记载的其他取得方式,而且,开源获取也无法视为是一种合法取得的事实行为抗辩。在此前的社会发展过程中,开源获取作为一种事实行为和社会现象过于小众,未能引起立法和司法部门的注视,这种合法取得的重要种类遗憾地没有纳入新商业秘密司法解释中。

四、开源软件抗辩的出罪体系的本土化证成

开源软件抗辩要在我国司法上实现法律适用,不仅需要开源协议具备法律强制力的三段论大前提得以证立,其次问题是具体的法律适用也应当得到本土化证成。在“国内开源软件无罪抗辩第一案”中,以开源软件主张无罪抗辩将遭遇的问题是,即便司法机关认可开源软件的法律效力,司法机关仍严格地受到刑法的形式要件的拘束。《刑法》第219条侵犯商业秘密罪没有规定成立开源软件就不构成商业秘密,是否构成商业秘密须依照中国法的形式特征来判断。构成开源软件=>不构成商业秘密之观点,无法在本土法上说服司法机关,特别是严守刑法形式要件的刑事司法机关。例如,根据对公开互联网的代码检索(包括国内外的代码开源网站),若没有检索到案涉源代码,则司法机关会认为案涉源代码的非公知性成立。又例如,GPL协议和官方常见问答规定了,GPL开源软件的衍生作品也是开源软件,且不允许以商业秘密进行保护。以该规定直接对将开源软件以商业秘密形式进行保护加以杯葛,抗辩商业秘密不成立,这难以撼动司法机关关于商业秘密法定特征的坚持。从该案件的辩护体系为例展开,第四项方略是对开源软件抗辩的出罪体系进行本土化建构。

根据刘艳红教授的《实质出罪论》,基于我国实证运行、现行法和法理的出罪体系包括构成要件不该当出罪、违法性出罪、有责性出罪、基于法益的实质出罪和程序正当性出罪。违法性出罪涉及正当防卫、紧急避险等自然犯问题,有责性出罪涉及责任能力等问题,在侵犯商业秘密犯罪案的出罪体系中,该两者基本无涉,故不予讨论。程序正当性是必须结合特定案件进行结合分析,也与开源软件无罪抗辩之实体问题无涉。余下的出罪方式,也与侵犯商业秘密民事案件的抗辩体系是同构的,主要是构成要件不该当出罪和基于法益的实质出罪。

侵犯商业秘密犯罪案的构成要件不该当出罪,可以逐一研判各构成要件是否该当,准确把握构成要件要素的出罪解释。[16]基于开源软件无罪抗辩的构成要件要素的出罪事由主要包括如下:

1、非公知性不构成的出罪

关于非公知性,法条规定的“不为公众所知悉”在司法解释上的规定为“不为所属领域的相关人员普遍知悉和容易获取”(旧反不正当竞争司法解释第十条、新商业秘密司法解释第三条)。这意味着“不为公众所知悉”应当同时具备“不为普遍知悉”和“并非容易获得”两个具体条件。司法解释稿的定稿最终将其中的“或者”改为“和”,即“普遍知悉”与“容易获得”不是选择性的要求,而是必须同时具备的要求。将“或者”改为“和”的主要考虑之一就是——“不易获得没有独立的意义,只有将其作为在非公知信息之外另设的限制,才使其具有限定信息范围的门槛意义”。[17]

以GPL2.0协议开源软件抗辩出罪为例,GPL2.0协议规定的开源软件的源代码的本质属性是“容易获得”。即便权利人违反GPL2.0协议不开源(甚至以商业秘密方式保密),并不能否定软件源代码“容易获得”的本质属性。所有的源代码持有人均可以在软件商业发布后自由获得、自由修改、自由复用、自由分发源代码。

2、商业价值性不构成的出罪

所有的反不正当竞争法保护的利益都与竞争优势有关。“与竞争优势无关的价值的信息不能构成商业秘密”,换言之,“商业秘密是使竞争者取得竞争优势的信息”。[18]竞争优势(a competitive advantage)是反不正当竞争法上的惯用语,为国内外竞争法理所通用。[19]“美国法院在认定商业秘密价值性时,更多地使用‘竞争优势’的表述。”[20]司法上是否具备商业价值性,核心判断在于是否能够为权利人带来竞争优势。

以GPL2.0协议开源软件抗辩出罪为例,作为GPL2.0的开源软件的源代码不能为权利人带来竞争优势,原因是此种开源软件的源代码是自由获得、自由修改、自由复用、自由分发。反不正当竞争法上的竞争优势,是权益人基于知识产权优势获得的合法垄断壁垒。开源软件就是拆除技术垄断壁垒,促进社会的技术交流与发展。倘若权利人的开源软件是前手开源软件的衍生作品,权利人就是开源协议的技术受益者,然后再寻求垄断壁垒,这存在着违反诚信原则等合法性问题。

3、“造成重大损失”构成要素不成立的出罪

以GPL2.0协议开源软件抗辩出罪为例,GPL2.0开源软件的用户或源代码持有人可另行自由修改、自由使用、自由分发,权利人无权收取费用。由此,“造成重大损失”要件就不成立。

GPL2.0协议第六条的规定了禁止对GPL开源软件的再发布进行任何进一步的限制:“每当你再发布本程式(或本程式的任何派生作品),接收者自动从原始权利人获得本许可,以复制、分发和修改本程式。你不可以对他们获得的权利加以进一步的限制,你也没有要求第三方遵守该协议的义务。”GNU官网解答也表明,GPL开源软件在分发时是完全自由的,无需经过权利人的获知或同意的,也无须向权利人付费。[21]

关于保密性的抗辩需要结合具体案情,也与开源软件无罪抗辩之实体问题无涉。法益对构成要件具有指导解释的机能,它帮助确定某一行为是否侵害了刑法所保护的法益,是否达到了应受刑罚处罚的程度。[22]以开源软件抗辩为例,基于不损害法益的实质出罪,并“但书”条款为出罪机制。[23]

4、不损害法益的实质出罪

以GPL2.0协议开源软件抗辩出罪为例,主张GPL2.0协议软件源代码是商业秘密,这是不法利益的诉求,不属于侵犯商业秘密罪的刑法法益。个体利益层面:权利人寻求的是不法利益——向他人开源、提供转发、修改和使用源代码,是权利人的开源义务。市场竞争法律秩序层面应当更多地关注是否存在对市场公平交易、竞争秩序的破坏。[24]权利人应当根据开源协议履行开源义务,这是保护市场竞争法律秩序的基本要求。权利人倘若将GPL2.0协议软件源代码主张是商业秘密寻求司法保护,这反倒是对市场竞争法律秩序的损害。

结语

本文聚焦于开源软件抗辩来探究其本土化适用逻辑,以及出罪体系作为具体法律适用的本土化证成。进一步地,开源软件的适用逻辑和具体法律适用可用于包括但不限于:诉请型适用(起诉违反开源义务的侵权或违约);可以从开源软件展开至开源技术;可以展开至GPL之外的其他开源协议;可以展开至针对专利侵权(或软著侵权)的开源软件抗辩等。最终,本文系以我国开源软件无罪抗辩第一案为例,来着眼于解决知产新事物的首案代理困境、司法心理学、裁判者司法认知、说服技术及其具可接受性的中国本土落地方案。探析出知识产权首案办理四项方略:锚定辩护者(或当事人)困境问题;把握裁判者司法认知;我国现行法下探寻适用逻辑(现行法解释之扩张);建构本土化的出罪(抗辩)体系,即建构本土化、可落地的司法方案。而建构可接受性司法方案的核心理念仍在于——结合新技术事实对本土法的审慎解释。

“知产难案办理技艺”系列下篇预告

集成电路布图设计专有权行政撤销之“独创性”生死局(上篇):现行法探析出的独创性“两不像”现象

注 释:

向上滑动阅览

[1] 参见〔澳〕彼得·德霍斯著:《知识财产法哲学》,周林译,商务印书馆2008年版,第212~221页。

[2] 〔澳〕彼得·德霍斯著:《知识财产法哲学》,周林译,商务印书馆2008年版,中文版序第5页。

[3] 参见〔澳〕彼得·德霍斯著:《知识财产法哲学》,周林译,商务印书馆2008年版,中文版序第5~6页。

[4] 谢铭洋:《智慧财产法之基础理论》,台北翰芦图书出版有限公司2004年版,第64页。

[5] 谢铭洋:《智慧财产法之基础理论》,台北翰芦图书出版有限公司2004年版,第88页。

[6] 徐瑄、张汉华:《计算机开源软件许可证的许可条款性质认定:美国联邦巡回上诉法院第2008-1001号裁决评析》,载《知识产权》2014年第6期。

[7] 张平:《开源软件对知识产权制度的批判与兼容(二):开源软件许可证的比较研究》,载《科技与法律》2004年第2期。

[8] 张韬略:《MySQL AB诉Progres Software Corp., NUSPHERE Corp.案:GPL许可证与法律失之交臂》,载《网络法律评论》2004年第5卷。

[9] 张汉华:《违反开源软件许可证的法律救济:以德国法为视角》,载《法学评论》2015年第3期。

[10] 宋晓姗、阮开欣:《违反开源软件许可协议既构成侵权也构成违约》,载《中国知识产权报》2017年6月23日第10版。

[11] 孔祥俊:《反不正当竞争法新原理·分论》,法律出版社2019年版,第454页。

[12] 谢晓尧:《在经验与制度之间:不正当竞争司法案例类型化研究》,法律出版社2017版,第382页。

[13] 谢晓尧:《在经验与制度之间:不正当竞争司法案例类型化研究》,法律出版社2017版,第370页。

[14] 谢晓尧:《在经验与制度之间:不正当竞争司法案例类型化研究》,法律出版社2017版,第385页。

[15] 黄武双:《商业秘密保护的合理边界研究》,法律出版社2018年版,第99页。

[16] 参见刘艳红:《实质出罪论》,中国人民大学出版社2020年版第262~235页。

[17] 孔祥俊:《反不正当竞争法新原理·分论》,法律出版社2019年版,第364页

[18] 孔祥俊:《反不正当竞争法新原理·分论》,法律出版社2019年版,第379页

[19] 参见孔祥俊:《反不正当竞争法新原理·总论》,法律出版社2019年版,第312~313页

[20] 黄武双:《商业秘密保护的合理边界研究》,法律出版社2018年版,第11页。

[21] GPL是否允许我要求任何收到软件的人必须向我付费和/或通知我?

不。事实上,这种要求会让程序变成非自由的。如果人们不得不付费才能得到一份程序拷贝,或者他们必须通知某个具体的人,那么这个程序是非自由的。参看自由软件的定义。GPL是一份自由许可证,因此它允许人们使用乃至再发布软件而不要求必须付费才能这样做。你可以向人们收费来给出你的软件拷贝。但是当人们从其他人那里获得拷贝时,你不能要求人们向你付费。‘Frequently Asked Questions about the GNU Licenses’,https://www.gnu.org/licenses/gpl-faq.en.html#InternalDistribution

[22] 刘艳红:《实质出罪论》,中国人民大学出版社2020年版第181页。

[23] 参见刘艳红:《实质出罪论》,中国人民大学出版社2020年版第31~33页。

[24] 参见孔祥俊主编:《商业秘密司法保护实务》,中国法制出版社2012年版,第258页。

作者介绍

沈浩

合伙人、法学博士

安杰世泽律师事务所

shenhao@anjielaw.com

业务领域:知识产权与反不正当竞争、争议解决、企业合规

沈律师在知识产权、商业秘密与反不正当竞争、重大疑难商事争议解决、公司治理与合规等领域有着丰富的执业经验。沈律师是LEGAL 500亚太榜单2023年知识产权特别推荐律师、2025年江苏区域特别推荐律师,他在知识产权与商事争议解决有着卓越的工作记录,入选最高人民法院发布年度典型知产案例(4件)、全国律协年度十佳知产案例、江苏等省级高院年度十大知产案例、南京等中级法院年度十大知产案例、南京律协年度十大知产案例等各权威机构年度典型案例20余件。他的法律工作获得包括大型国企、上市公司、高新科创企业家及科学家等客户的高度肯定。他还作为最高检民事行政咨询专家、教育部法学类硕博论文评审、高校知产学院兼职教授、仲裁委的知产仲裁规则等积极作出公益专业贡献,获得诸多权威机构的赞赏。

陈洁

资深律师

安杰世泽律师事务所

chenjie@anjielaw.com

业务领域:争议解决、知识产权与反不正当竞争、企业合规

陈律师专注知识产权与反不正当竞争、重大疑难复杂商事争议解决等领域,具备深厚的理论功底和丰富的实务经验,在最高人民法院、省高级人民法院再审及上诉案件代理方面表现突出,曾多次荣获中华全国律师协会、南京市律师协会知识产权年度十佳/优秀论文奖,获得南京市“2025年度知识产权法律专业律师”,代理的多起案例入选市级以上典型案例并被《商法》等权威法律评级机构收录报道。

识别二维码申请试用

知识产权实践指引

覆盖著作权、商标权、专利权、商业秘密等多个知产领域主题,通过司法大数据分析工具最高院观点速查全系列实务手册等多种形式的内容和功能,赋能用户对知识产权相关案例研究和诉讼策略优化,指导解决实践问题,提升知产管理效能。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-16 13:35:56 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/534460.html
  2. 运行时间 : 0.146624s [ 吞吐率:6.82req/s ] 内存消耗:4,805.92kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=5065c99a37a027e581a450ac90cc3e6a
  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.000484s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000758s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000300s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000263s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000586s ]
  6. SELECT * FROM `set` [ RunTime:0.000249s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000700s ]
  8. SELECT * FROM `article` WHERE `id` = 534460 LIMIT 1 [ RunTime:0.000554s ]
  9. UPDATE `article` SET `lasttime` = 1776317756 WHERE `id` = 534460 [ RunTime:0.003299s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000334s ]
  11. SELECT * FROM `article` WHERE `id` < 534460 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000567s ]
  12. SELECT * FROM `article` WHERE `id` > 534460 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000561s ]
  13. SELECT * FROM `article` WHERE `id` < 534460 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000963s ]
  14. SELECT * FROM `article` WHERE `id` < 534460 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.004050s ]
  15. SELECT * FROM `article` WHERE `id` < 534460 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.003137s ]
0.148338s