我刚刚读了这个帖子,如果你还没有修复的话,我认为你可以使用内置的 discourse remap 功能来实现。
与 rake 任务不同,discourse remap 使用 DbHelper.remap,它会在 PostgreSQL 数据库的所有表的所有文本列中执行全局正则表达式搜索和替换。它应该能够成功找到并更新 poll_options.html 内部被烘焙的 CDN URL(以及 rake 任务跳过的任何其他表)。
cd /var/discourse
./launcher enter app
# 创建安全备份
discourse backup
# 运行全局重映射(仅域名,不带协议,以捕获所有变体)
discourse remap 'cdn.unicyclist.com' 'unicyclist.com'
# 清除 Redis 缓存(至关重要,因为 Discourse 大量缓存烘焙后的 HTML)
rake cache:clear
我在这里做过类似的事情(但是方向相反):Chat thumbnails bypass s3_cdn_url & use raw S3 bucket URLs - #8 by Lilly