乐于分享
好东西不私藏

AI安全第一原则:真实凭证永不进入对话

AI安全第一原则:真实凭证永不进入对话

摘要:AI 安全不是让程序不用密码,而是让密码只在本地受控环境里被程序读取,不在对话框里被 AI 看见。正确做法是:AI 只看变量名、配置结构、调用方式和脱敏日志;真实凭证放进操作系统环境变量、密码管理器、本地 .env 或云厂商本地 profile;代码执行时从本地读取,聊天记录里只留下占位符。

0. 结论先行

真实凭证永不进入 AI 对话。

但这不等于程序不能使用凭证。

正确架构是四层:

AI 对话层:只放问题、结构、假值、变量名、脱敏日志本地执行层:读取环境变量、密码管理器、本地 .env、云厂商 profile权限控制层:限制命令、确认高风险动作、禁止打印密钥泄漏处置层:一旦真实凭证进入对话,直接轮换和吊销

一句话:

凭证可以被本地程序读取,不能被对话框读取。

很多人把“不要把密码给 AI”理解成“AI 没法帮我排错”。这不对。

AI 不需要知道真实密码。

AI 只需要知道程序如何读取密码。

你可以告诉 AI:

DATABASE_URL=<your_database_url>OPENAI_API_KEY=<your_api_key>REDIS_URL=<your_redis_url>

你不应该告诉 AI:

DATABASE_URL=postgres://real_user:real_password@real_host:5432/prodOPENAI_API_KEY=sk-real-secret-valueREDIS_URL=redis://:real_password@real_host:6379

前者是结构。

后者是钥匙。

AI 需要的是接口,不是钥匙。

1. 为什么“不给真实值”不影响 AI 干活

排错时,AI 真正需要的通常不是真实凭证,而是这几类信息:

  • 变量名是什么
  • 程序在哪里读取变量
  • SDK 怎么初始化
  • 报错发生在哪一步
  • 返回的是 401、403、timeout,还是 DNS 解析失败
  • 本地环境是否真的设置了变量
  • 调用链有没有把凭证传到正确位置

这些信息都可以不暴露真实值。

例如你问 AI:

我的 Node.js 项目通过 process.env.OPENAI_API_KEY 读取 API Key。启动时报 401。我已经确认环境变量存在,但不确定 SDK 初始化方式是否正确。下面是脱敏后的代码和错误信息。

这就够了。

AI 可以检查初始化顺序、变量名拼写、加载 .env 的时机、SDK 版本、请求头格式、错误处理逻辑。

它不需要看到 sk-... 后面那串真实字符。

说白了,你要让 AI 看门锁结构,不是把钥匙递过去。

这件事最容易在赶进度时被忘掉。

因为 AI 会用很自然的语气说:

“请提供完整配置文件。”

“请粘贴完整报错日志。”

“为了定位问题,我需要看到环境变量。”

这些话听起来专业,但你要在脑子里自动翻译一遍:

可以给结构。不能给真实值。

2. 安全给法一:给结构,不给真实值

个人使用 AI 时,最简单的安全动作,是把所有“真实值”替换成“占位值”。

可以给 AI:

类型
可以给
环境变量
变量名、用途、假值
配置文件
字段结构、默认值、脱敏样例
报错日志
错误码、脱敏堆栈、调用链
数据库
表结构、字段说明、匿名样例
云服务
SDK 调用方式、权限模型

不应该给 AI:

类型
不应该给
环境变量
.env
 原文、真实 API Key
日志
Cookie、Token、手机号、真实用户数据
数据库
生产连接串、真实数据导出
云服务
AccessKey、SecretKey、长期 Token
终端输出
printenv
cat .env、完整请求头

如果你不确定某段内容是不是敏感,默认按敏感处理。

安全上有一个很朴素的判断:

这段内容如果发给一个陌生外包,你会不会犹豫?

如果会,那就不要直接发给 AI。

AI 对话框不是保险柜。

3. 安全给法二:把真实凭证放进本地环境变量

最常见、也最容易落地的做法,是把真实凭证放进本地环境变量。

AI 写代码时只写:

const apiKey = process.env.OPENAI_API_KEY;

或者:

import osapi_key = os.environ["OPENAI_API_KEY"]

AI 知道变量叫 OPENAI_API_KEY

但它不知道真实值是什么。

代码执行时,本地进程从你的 shell、操作系统环境或运行时环境里读取真实值。只要工具没有把环境变量内容打印回对话,真实凭证就不会进入聊天记录。

这就是安全协作的核心:

AI 生成读取方式。本地环境提供真实值。

这里有一个边界必须说清楚。

环境变量不是魔法保险箱。它只是比“贴进对话框”好得多,因为真实值留在本地进程环境里。

如果你让 AI 执行下面这些命令,还是会泄漏:

echo $OPENAI_API_KEYprintenvenvcat .env

更安全的检查方式,是只确认“有没有”,不展示“是什么”:

test -n "$OPENAI_API_KEY" && echo "OPENAI_API_KEY is set"

或者检查长度:

python -c "import os; print(len(os.getenv('OPENAI_API_KEY', '')))"

关键动作不是“让 AI 不执行命令”。

关键动作是:

检查状态,不打印秘密。

4. 安全给法三:用系统密码管理器或密钥链

如果凭证价值更高,不要只放在散落的 shell 配置里。

可以放进系统级密码管理器或密钥链:

  • macOS Keychain
  • Windows Credential Manager
  • 1Password CLI
  • Bitwarden CLI
  • pass
  • 云厂商本地 profile

它们的意义不是让你少记密码。

而是让密码少出现。

例如用 1Password CLI 时,程序或脚本可以通过本地授权读取:

op read "op://dev/openai/api_key"

你给 AI 的不是真实值,而是读取方式:

项目通过 1Password CLI 读取 OPENAI_API_KEY。读取路径是 op://dev/openai/api_key。请帮我检查脚本的错误处理和环境变量注入方式。不要输出密钥值。

这比把密钥贴进对话好得多。

因为真实值不在聊天记录里,不在代码里,也不应该进入 Git。

密码管理器的另一个好处是轮换。

一旦怀疑泄漏,你可以集中换掉,而不是在十几个脚本、截图、聊天记录里追着找。

5. 安全给法四:本地 .env 可以存在,但不要上传

现实一点说,个人项目大量使用 .env

这没问题。

问题不是 .env 存在。

问题是你把 .env 当成普通上下文发给 AI,或者提交到 Git。

个人项目至少要做到四件事:

.env 加入 .gitignore仓库提交 .env.example给 AI 看 .env.example不给 AI 看 .env

可以给 AI:

# .env.exampleDATABASE_URL=postgres://user:password@localhost:5432/dbREDIS_URL=redis://localhost:6379API_KEY=your_api_key_here

不可以给 AI:

# .envDATABASE_URL=postgres://real_user:real_password@real_host:5432/prodAPI_KEY=real_secret_value

.env.example 是说明书。

.env 是钥匙串。

说明书可以给,钥匙串不能给。

如果 AI 要帮你排查 dotenv 加载问题,可以这样问:

这是我的 .env.example。真实 .env 留在本地,不会粘贴。程序启动时使用 dotenv 加载环境变量。请帮我检查加载顺序、变量命名和错误处理。

这就够了。

6. 安全给法五:让 AI 写检查命令,但不让它打印密钥

AI Agent 可以在本地执行命令,这是效率来源,也是风险来源。

正确方式不是完全禁用执行,而是把命令分成三类。

第一类,可以直接执行:

pwdgit statusnode --versionpython --version

第二类,可以执行,但必须禁止输出敏感值:

test -n "$DATABASE_URL" && echo "DATABASE_URL is set"python -c "import os; print('set' if os.getenv('API_KEY') else 'missing')"

第三类,默认不要执行:

cat .envprintenvecho $DATABASE_URLcurl -H "Authorization: Bearer $TOKEN" ...

注意最后一类。

有些命令本身不一定恶意,但会把凭证带进终端输出、日志、请求历史或对话上下文。

你要让 AI 学会帮你检查环境,而不是展示环境。

个人使用 AI Agent 时,可以直接在规则文件里写:

不要读取或打印 .env。不要执行 printenv、env、echo $TOKEN、echo $API_KEY。检查密钥时只能输出 set/missing 或长度。涉及删除、上传、生产环境、权限变更时必须先解释命令并等待确认。

这类规则不复杂。

但它会把“临场小心”变成“默认护栏”。

7. auto mode 是护栏,不是保险箱

2026年3月,一些 AI 编码工具已经开始把权限判断放进执行层。

例如 Claude Code 的 auto mode,公开报道里描述为:工具会尝试区分低风险动作和高风险动作;普通编辑可以自动继续,涉及删除文件、暴露敏感数据、执行可疑代码等操作时,系统会阻止、重试或要求用户介入。

这个方向是对的。

因为安全不能只靠用户每次瞪大眼睛看命令。

安全必须进入权限层、执行层和审计层。

但要注意:

auto mode 是护栏,不是保险箱。

护栏能降低风险,不能替你承担全部风险。

原因很简单。

第一,分类器可能误判。安全动作可能被拦,危险动作也可能被放过。

第二,工具通常更容易识别显眼的危险命令,比如删除文件、外发数据、执行混淆脚本。但如果风险藏在普通代码改动里,边界就没那么清楚。

第三,你如果主动让工具读取 .env 并把内容打印出来,很多护栏也很难替你兜底。

所以个人使用 auto mode 时,正确心态不是:

“开了 auto,就安全了。”

而是:

“开了 auto,低级风险少一些;真正的边界仍然要靠我的本地凭证架构和规则文件。”

8. 泄漏后,不要安慰自己“应该没事”

如果真实凭证已经进入 AI 对话,按泄漏处理。

不要纠结模型到底有没有记住。

不要纠结中转站会不会保存。

不要纠结日志多久清理。

你无法证明它没有被记录。

所以直接做四件事:

轮换密钥吊销 Token检查访问日志补上规则和模板

如果是生产数据库连接串,还要检查异常连接。

如果是云厂商 AccessKey,还要检查资源创建、账单、权限变更和对象存储访问记录。

如果是 Cookie 或 Session,还要退出所有设备,重置二次验证或 Passkey。

这不是夸张。

这是把“应该没事”换成“我已经处理”。

安全里最贵的不是轮换密钥。

最贵的是抱着侥幸继续跑。

9. 个人最小安全工作流

最后,把这篇文章压缩成一套个人工作流。

每次问 AI 之前,先过 7 个动作:

1. 把真实值替换成占位值2. 只给 .env.example,不给 .env3. 日志先删 Cookie、Token、手机号、连接串4. 让 AI 写读取方式,不让 AI 看真实值5. 真实凭证放本地环境变量或密码管理器6. 检查命令只输出 set/missing,不输出内容7. 一旦泄漏,直接轮换和吊销

这套流程看起来麻烦。

但真正跑熟以后,它不会拖慢你。

它会让你更敢用 AI。

因为你知道边界在哪里。

第一篇里,我们说“不要回答”。

这篇的补充是:

不是所有问题都不回答。

而是:

结构可以回答,真实值不回答。

调用方式可以回答,钥匙不回答。

本地程序可以读取,聊天记录不能读取。

正如《论语·卫灵公》所言:“工欲善其事,必先利其器。

AI 是器。

环境变量、密码管理器、权限规则,也是器。

真正安全的用法,不是把所有器都交给 AI。

而是让每个器待在自己的位置上。


我是 哇塞君。

我相信所有复杂的管理问题,背后都有一个更优的解。如果你也在自己的"铁匠铺"里面对着"天外陨铁"发愁,或许我们可以聊聊彼此锻造"匕首"的故事。


参考资料 (References & Further Reading)

  • [1]
     哇塞君. 不要回答!不要回答!当 AI 开始向你索要密码. (本系列安全现象篇)
  • [2]
     OWASP Cheat Sheet Series. Secrets Management Cheat Sheet. (凭证管理、轮换、审计与最小权限)
  • [3]
     The Twelve-Factor App. III. Config. (配置与代码分离,用环境变量承载配置)
  • [4]
     1Password Developer. 1Password CLI. (通过本地密码管理器读取 secrets)
  • [5]
     Bitwarden. Bitwarden CLI. (个人和团队使用命令行管理 secrets)
  • [6]
     The Verge. Anthropic's Claude Code gets 'safer' auto mode. 2026-03-25. (Claude Code auto mode 的公开报道)
  • [7]
     TechRadar. Anthropic gives Claude Code new 'auto mode' which lets it choose its own permissions. 2026-03-25. (auto mode 权限分类器与实验性风险说明)
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-24 23:05:07 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/785633.html
  2. 运行时间 : 0.086810s [ 吞吐率:11.52req/s ] 内存消耗:4,624.74kb 文件加载: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.000548s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000876s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000333s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000288s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000479s ]
  6. SELECT * FROM `set` [ RunTime:0.000197s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000592s ]
  8. SELECT * FROM `article` WHERE `id` = 785633 LIMIT 1 [ RunTime:0.000511s ]
  9. UPDATE `article` SET `lasttime` = 1782313507 WHERE `id` = 785633 [ RunTime:0.000769s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000221s ]
  11. SELECT * FROM `article` WHERE `id` < 785633 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000397s ]
  12. SELECT * FROM `article` WHERE `id` > 785633 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000377s ]
  13. SELECT * FROM `article` WHERE `id` < 785633 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000637s ]
  14. SELECT * FROM `article` WHERE `id` < 785633 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001360s ]
  15. SELECT * FROM `article` WHERE `id` < 785633 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001031s ]
0.088530s