问题出现得很突然,日志倒是留得挺全。FAQ 的答案在页面上是富文本,模板把带段落标签的 HTML 原样塞进答案的文本字段。测试工具提示标记内容与页面不一致,折叠问答一直不展示。

刚开始盯着「多组问答里只有两组带标签,校验按整页判」,折腾了半个多小时,排掉了。

把日志和配置对完,能解释这个现象的基本就这几处。文本字段应该是纯文本,塞进了 HTML 标签。还有一种是页面上的答案被前端二次处理,和标记内容不同。

另外,内容由编辑器输出,没有做标签清理。

动手时先看标记里的答案原文

curl -s https://www.example.com/faq/1 | grep -o '"text":"[^"]*"'

去掉标签只保留文字

strip_tags($answer)

再往下核对页面可见文字与标记是否逐字一致

curl -s https://www.example.com/faq/1 | grep -o '<div class="answer">[^<]*'

等前面都确认过,再重

新

怎么算真的好了,看的是同一批现象。去掉标签后标记与页面文字一致,测试通过,折叠问答在两周内开始出现在搜索结果里。

补一句。FAQ 的答案必须和用户看到的文字逐字一致,多加一个标签就会被判内容不符。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。

作者 9823189