# 自定义表情符号网址如何工作？

**URL:** https://meta.discourse.org/t/how-do-custom-emoji-urls-work/160185
**Category:** Development
**Created:** [2020年八月8日 09:33 UTC](https://meta.discourse.org/t/how-do-custom-emoji-urls-work/160185 "2020-08-08T09:33:33Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![Boost](https://avatars.discourse-cdn.com/v4/letter/b/8e8cbc/32.png) [@Boost](https://meta.discourse.org/u/Boost)
#### Post date: [2020年八月8日 09:33 UTC](https://meta.discourse.org/t/how-do-custom-emoji-urls-work/160185/1 "2020-08-08T09:33:33Z")

</div>

因此，在报告了以下问题后：[Custom emoji don't use CDN for S3 stored assets in a few pages - #6 by Falco](https://meta.discourse.org/t/custom-emoji-dont-use-cdn-for-s3-stored-assets-in-a-few-pages/159787/6?u=boost%EF%BC%8C%E5%B9%B6%E9%80%9A%E8%BF%87%E4%B8%80%E7%95%AA%E8%B0%83%E7%A0%94%EF%BC%8C%E6%88%91%E5%8F%91%E7%8E%B0%E8%BF%99%E4%BC%BC%E4%B9%8E%E6%98%AF) Discourse 中缺失的一项功能或是一个漏洞：[Custom emoji don't use CDN for S3 stored assets in a few pages - #8 by Boost](https://meta.discourse.org/t/custom-emoji-dont-use-cdn-for-s3-stored-assets-in-a-few-pages/159787/8?u=boost)

我尝试编写代码，将自定义表情符号的 URL 映射到 S3\_CDN 的 URL：[https://github.com/discourse/discourse/compare/master...hhyyrylainen:custom\_emoji\_cdn\_url?expand=1](https://github.com/discourse/discourse/compare/master...hhyyrylainen:custom_emoji_cdn_url?expand=1)

我还在 Rails 控制台中测试了这段代码，逻辑看起来是正确的。然而，当我尝试将此更改部署到我的生产环境网站时，似乎没有任何效果（甚至连表情符号版本的变化都没有导致标准表情符号的 URL 更新）。

所以我想请教的是，整个表情符号缓存机制以及向客户端发送 URL 的流程是如何工作的？我应该在哪里添加钩子（hook）来实现这个修复？
