From 76fd36c0a408e3e1033ac87c93a7bf808d2c8189 Mon Sep 17 00:00:00 2001 From: lucanlee Date: Sat, 8 Aug 2026 23:51:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E7=BA=BF=E5=AE=9E=E6=B5=8B=E6=89=AB?= =?UTF-8?q?=E6=8F=8F=EF=BC=9A=E5=8F=91=E7=8E=B0=E7=94=9F=E4=BA=A7=E9=83=A8?= =?UTF-8?q?=E7=BD=B2=E9=99=88=E6=97=A7=EF=BC=8C63431dd=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E6=9C=AA=E7=94=9F=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 对 https://cloud-chip.cn 做 curl 实测(速度+SEO/GEO) - 关键发现:线上 JSON-LD 仍为旧 Organization、无 hreflang、产品页双品牌、security.txt/llms.txt 404 → 63431dd 审计修复未上线 - 速度:TTFB 0.12-0.17s(好),但 no-store 无缓存 + 外部 cdn.tailwindcss.com 拖累 - SEO/GEO 评级:当前 C-,正确部署后可达 B - 在 docs/SECURITY_SEO_REMEDIATION.md 新增「上线实测扫描」章节含服务器修复命令 - CHANGELOG 新增 [1.0.1] 版本记录 --- .workbuddy/memory/2026-08-08.md | 9 ++++- .workbuddy/memory/MEMORY.md | 2 +- CHANGELOG.md | 15 +++++++ docs/SECURITY_SEO_REMEDIATION.md | 67 ++++++++++++++++++++++++++++++++ 4 files changed, 91 insertions(+), 2 deletions(-) diff --git a/.workbuddy/memory/2026-08-08.md b/.workbuddy/memory/2026-08-08.md index 7556109..dcaad28 100644 --- a/.workbuddy/memory/2026-08-08.md +++ b/.workbuddy/memory/2026-08-08.md @@ -51,10 +51,17 @@ - 已核验通过:SEC-04(本地 .env APP_DEBUG=false 等);SEO-01(全站区块已 h2,首页 h1 来自 Hero 富文本,属后台编辑规范)。 - 未自动改(标记待办,详见 docs/SECURITY_SEO_REMEDIATION.md):SEC-01/REL-03(CSP unsafe-inline,需 Tailwind 构建重构)、REL-02(公开页缓存,避免 CSRF 419 故全局 no-store)、REL-01/PHY-01~04(CDN/WAF/多实例/备份,云端操作)、SEC-03(composer 过旧无 audit 命令)、SEO-03/04(品牌名/title 堆砌,来自后台 site_name/seo_title_default 设置)、GEO-01/02/04/06 等(内容侧)。 - 本地记录文档(供未来开发者):CHANGELOG.md + docs/SECURITY_SEO_REMEDIATION.md(逐项状态总表 + 改动位置 + 上线 curl 自检清单),已随 63431dd 提交。 -- 推送:凭据仍在本机环境拿不到,需用户从终端 `git push origin main`(用户此前选「我从本机终端推」)。 +- 推送(2026-08-08 23:40 复核):此前「本地 5 提交未上 origin」已过时——origin/main 现已包含 63431dd(审计修复)及 bc817bf(记忆),所有本地提交已同步至 git.coolcoth.com。剩余问题纯属**服务器端**:`/www/wwwroot/cloud-chip.cn` 文件夹曾被清空,需在服务器重新 `git clone` 拉起,而非 git 推送问题。 ## 澄清(2026-08-08 23:29 记录,23:4x 修订) - 用户声明:**cloud-chip.cn 网站/业务 与 coolcoth.com 网站/业务 没有任何关系**(非同一主体/品牌)。 - 但代码托管(Gitea)确实在 `git.coolcoth.com`,该地址**正确、保持不动**——coolcoth.com 在此仅作 Git 托管基础设施(类比用 GitHub 托管),不代表两网站有关联。 - 因此此前「remote 误配、须改为 cloud-chip.cn 自有 Gitea」的判断**已撤销**,`git remote origin` 维持 `https://git.coolcoth.com/Lucanlee/cloud-chip.cn.git` 不变。 - 给未来开发者的提示:不要因为 git 主机在 coolcoth.com 就误判 cloud-chip.cn 归 coolcoth.com 所有;二者仅在「代码托管于该 Git 服务」这一点上有关,网站/品牌/业务彼此独立。 + +## 线上实测扫描(2026-08-08 23:5x) +- 用户称「已部署好」,遂对 cloud-chip.cn 做 curl 实测(速度+SEO/GEO)。 +- **关键发现:生产部署是陈旧版本,63431dd 审计修复未上线**。证据:线上 JSON-LD 仍是旧 `Organization`(非 WebSite+SearchAction)、首页无 hreflang、产品页仍双品牌标题、security.txt/llms.txt 由 nginx 直返 404(文件不在服务器)。代码历史已同步(HEAD==origin/main==bc817bf 含 63431dd),故问题在服务器工作树/运行时未更新。 +- 根因推测:①git pull 因「实时更新」自动提交造成的 origin 分歧未快进;②OPcache `validate_timestamps=Off` + 陈旧编译视图未清。已在 `docs/SECURITY_SEO_REMEDIATION.md` 写入「上线实测扫描」章节 + 服务器修复命令(`git reset --hard origin/main` + `view:clear`/`config:clear` + 重载 PHP-FPM 刷 OPcache)。 +- 速度:首页热 TTFB≈0.17s、子页≈0.12s(好),gzip 已开;但 Cache-Control 全程 no-store(无缓存),且依赖外部 `cdn.tailwindcss.com`(Tailwind Play CDN,拖慢首屏且是 SEC-01 根因),无 CDN。 +- SEO/GEO 评级(线上=陈旧版):综合约 C-;正确部署 63431dd 后可达 B(良好基础),到 A 仍需解决标题规范/多 h1/CSP unsafe-inline/no-store/CDN 等遗留项。 diff --git a/.workbuddy/memory/MEMORY.md b/.workbuddy/memory/MEMORY.md index 68a3db3..86a3166 100644 --- a/.workbuddy/memory/MEMORY.md +++ b/.workbuddy/memory/MEMORY.md @@ -12,4 +12,4 @@ - 宝塔 WebHook 插件脚本里的 `git add -A && commit -m "实时更新" && push` 自动提交逻辑会制造 origin 分歧、导致后续 `git pull` 拉不进新代码,应删除。 ## 待办(未解决) -- 之前本地 5 个提交(含弃用修复、deploy.sh 增强、审计修复)尚未推到 origin(git.coolcoth.com 凭据在本机/本环境拿不到,需用户在能弹窗的终端 push);服务器 `/www/wwwroot/cloud-chip.cn` 曾被清空,需重新 clone 拉起。 +- 截至 2026-08-08 23:40:本地提交(含弃用修复、deploy.sh 增强、审计修复 63431dd、记忆 bc817bf)**已在 origin/main**(git.coolcoth.com 凭据问题已由自动提交+推送机制同步,无需手动 push)。剩余事项是**服务器端**:`/www/wwwroot/cloud-chip.cn` 曾被清空,需在服务器重新 `git clone` 拉起(不能只 pull)。 diff --git a/CHANGELOG.md b/CHANGELOG.md index 05c9a3c..47fbead 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,21 @@ --- +## [1.0.1] - 2026-08-08 (上线实测扫描) + +部署后对 https://cloud-chip.cn 做 curl 实测(速度 + SEO/GEO 友好度),发现**生产部署为陈旧版本,63431dd 修复未上线**。 + +### Findings(实测发现) +- **修复未生效**:线上 JSON-LD 仍为旧 `Organization`(非 `WebSite`);首页无 `hreflang`;产品页标题仍双品牌;`security.txt`/`llms.txt` 由 nginx 直返 404。 +- **速度**:首页热 TTFB ≈ 0.17s、子页 ≈ 0.12s(✅ 好);gzip 已开(✅);但 `Cache-Control` 全程 `no-store`(❌ 无缓存);依赖外部 `cdn.tailwindcss.com`(❌ 渲染阻塞);无 CDN(❌)。 +- **SEO/GEO 评级**:当前线上 ≈ **C-**(基线);正确部署 63431dd 后可达 **B**(良好基础),到 A 仍需解决标题规范/多 h1/CSP/no-store/CDN 等遗留项。 + +### Action Required(需在服务器执行) +- `git reset --hard origin/main` + `php artisan optimize:clear` + 重载 PHP-FPM 刷 OPcache。 +- 完整命令清单与复核 curl 见 `docs/SECURITY_SEO_REMEDIATION.md` →「上线实测扫描」章节。 + +--- + ## 如何阅读本报告 1. 先看 `docs/SECURITY_SEO_REMEDIATION.md` 的「状态总表」确认每项当前进度。 2. 上线后用该文档末尾的 `curl` 自检清单逐条验证。 diff --git a/docs/SECURITY_SEO_REMEDIATION.md b/docs/SECURITY_SEO_REMEDIATION.md index 926fb29..fa68f0c 100644 --- a/docs/SECURITY_SEO_REMEDIATION.md +++ b/docs/SECURITY_SEO_REMEDIATION.md @@ -119,6 +119,73 @@ for p in /.env /phpinfo.php; do echo "$p -> $(curl -sS -o /dev/null -w '%{http_c --- +## 上线实测扫描(2026-08-08 23:4x,curl 直连 https://cloud-chip.cn) + +> 目的:复核 63431dd 审计修复是否在生产环境真正生效。结论:**未生效——生产部署为陈旧版本**。 + +### ⚠️ 关键发现:部署陈旧,修复未上线 +对线上 HTML/响应头逐项目核验,证明服务器当前运行的是 **63431dd 之前**的代码: + +| 验证点 | 预期(63431dd 后) | 线上实测 | 结论 | +|---|---|---|---| +| 首页 JSON-LD | `WebSite`+`SearchAction` | 仍是旧 `Organization` | ❌ 旧代码 | +| 首页 hreflang | `zh-CN` / `x-default` | **完全缺失** | ❌ 旧布局 | +| 产品页标题 | 单品牌 `… - 深圳市…有限公司` | `… - 深圳市云创芯电子有限公司 - 深圳市云创芯电子有限公司官网`(双品牌) | ❌ 旧 `Product::seoTitle()` | +| `/.well-known/security.txt` | 200 | **404(nginx 直返,文件不在服务器)** | ❌ 文件缺失 | +| `/llms.txt` | 200 | **404** | ❌ 文件缺失 | + +代码历史已同步(`HEAD == origin/main == bc817bf`,含 63431dd),故问题在**服务器工作树/运行时未更新**。 + +### 根因(二选一或并存) +1. **服务器 checkout 停留在旧提交**:`git pull` 因此前「实时更新」自动提交造成的 origin 分歧而失败/未快进,工作树停在 63431dd 之前。 +2. **OPcache + 陈旧编译视图**:即便磁盘已是新文件,若 PHP-FPM 的 OPcache `validate_timestamps=Off` 且部署后未重载,旧字节码(含旧 `Product.php`、旧编译 Blade)继续服务;`.well-known` 文件缺失则指向根因 1。 + +### 服务器修复命令(在 /www/wwwroot/cloud-chip.cn 执行) +```bash +cd /www/wwwroot/cloud-chip.cn +git fetch origin +git reset --hard origin/main # 强制对齐最新提交(含 63431dd + security.txt/llms.txt) +php artisan view:clear # 清陈旧编译视图 +php artisan config:clear +php artisan route:clear +php artisan optimize:clear +# 重载 PHP-FPM 刷新 OPcache(宝塔中对应 PHP 版本,如 8.3) +# 宝塔面板:软件商店 → PHP-8.3 → 重载;或: +# service php-fpm-83 reload # 视实际服务名调整 +``` +修复后用下方命令复核(应全部命中): +```bash +curl -s https://cloud-chip.cn/ | grep -oE '"@type": ?"WebSite"|hreflang="zh-CN"' +curl -s -o /dev/null -w '%{http_code}\n' https://cloud-chip.cn/.well-known/security.txt # 期望 200 +curl -s -o /dev/null -w '%{http_code}\n' https://cloud-chip.cn/llms.txt # 期望 200 +curl -s https://cloud-chip.cn/products/cc-pd3168 | grep -oE '[^<]*' # 应只含一个品牌 +``` +若 security.txt/llms.txt 仍 404,需确认 nginx 是否拦截 `.well-known`(加 `location ~ /\.well-known/ { access_log off; }` 或确保 root 指向 public)。 + +### 速度实测(2026-08-08) +| 指标 | 结果 | 评价 | +|---|---|---| +| 首页 TTFB(热) | 0.17s(冷启动曾 1.5s,仅首次) | ✅ 好 | +| 子页面 TTFB | 0.12–0.13s | ✅ 好 | +| gzip | 已开启 | ✅ | +| Cache-Control | 全程 `no-store` | ❌ 无缓存(REL-02) | +| 外部依赖 | `cdn.tailwindcss.com`(Tailwind Play CDN,渲染阻塞) | ❌ 拖慢首屏 + SEC-01 根因 | +| CDN | 无(直连杭州源站 47.107.30.116) | ❌ 异地延迟(REL-01) | +| 图片 alt | 3/3 有 alt | ✅ | + +### SEO/GEO 当前评级(线上=陈旧版,修复未生效) +- **安全响应头**:A(HSTS/CSP/X-Frame-Options 等已生效,这些早于本次修复即存在) +- **结构化数据**:C(仅 Organization,缺 WebSite/Product/Article/Breadcrumb) +- **hreflang**:F(缺失) +- **标题规范**:D(关键词堆砌 + 双品牌 + 品牌名不一致「云创芯电子」vs「深圳市云创芯电子有限公司」) +- **sitemap / robots**:A(均 200) +- **security.txt / llms.txt**:F(404) +- **速度**:B(延迟好,但无缓存+外部 CDN 拖累) +- **综合 SEO/GEO**:**当前 ≈ C-(基线)**;待正确部署 63431dd 后可达 **B(良好基础)**,但要到 A 仍需解决标题规范(后台设置)、多 h1(内容编辑)、CSP unsafe-inline(Tailwind 构建化)、no-store 缓存、CDN 等遗留项。 + +--- + ## 备注 - 本文件与 `CHANGELOG.md` 需随代码一起提交,确保后续开发者在仓库内即可看到。 - 状态符号会随修复推进更新;请勿删除「Deferred / 待人工」项,它们是对未来开发者的明确待办。 +- 2026-08-08 实测发现**生产部署未包含 63431dd**,见上「上线实测扫描」章节——修复命令已给出,部署后务必用所列 curl 复核。