搜索偶发空白但分类页正常,重建 catalogsearch_fulltext 后马上恢复,我会先查 Magento 当前索引别名指向的物理索引,而不是直接把问题归咎于缓存。
先在OpenSearch里看alias和index是否同时存在
curl -s 'http://opensearch:9200/_cat/aliases?v'
curl -s 'http://opensearch:9200/_cat/indices?v'正常情况下,Magento 使用的 alias 应指向一个存在且 health 正常的索引。若 alias 指向的索引刚被外部清理任务删除,应用查询会失败;若多个部署同时重建,也可能出现别名切换竞争。
对照Magento日志里的真实索引名
打开搜索请求对应的 exception.log,记录 index_not_found_exception 或 429 的索引名,再检查配置:
php bin/magento config:show catalog/search/engine
php bin/magento indexer:status catalogsearch_fulltext确认不同环境没有共用同一个 OpenSearch index prefix。测试、预发布和生产共用前缀时,一个环境重建或清理会误伤另一个环境。
修正前缀或外部生命周期策略后,只让一个发布任务执行完整 reindex:
php bin/magento indexer:reindex catalogsearch_fulltext随后再次查看 alias,确认它稳定指向新索引,并连续请求多个关键词。不要把“重建一次恢复”当永久修复,必须找到是谁删除索引或抢着切 alias。

