# Gravatar 头像自动更新？

**URL:** <https://meta.discourse.org/t/automatic-updates-of-gravatar-avatars/151370>\
**Category:** Support\
**Created:** [2020年五月13日 19:31 UTC](https://meta.discourse.org/t/automatic-updates-of-gravatar-avatars/151370 "2020-05-13T19:31:56Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![trusktr](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/trusktr/32/116841_2.png) [@trusktr](https://meta.discourse.org/u/trusktr)\
**Post date:** [2020年五月13日 19:31 UTC](https://meta.discourse.org/t/automatic-updates-of-gravatar-avatars/151370/1 "2020-05-13T19:31:56Z")

</div>

有没有办法配置 Discourse，使其在 [gravatar.com](http://gravatar.com) 上的 Gravatar 更新时自动更新头像？

我认为绝大多数人认为，如果他们在 [gravatar.com](http://gravatar.com) 上更新了 Gravatar，那么他们在所有网站上的个人资料头像也会随之更新。

但 Discourse 需要手动点击按钮才能更新 Gravatar 头像，这与上述预期相反。

这意味着，如果我更新了 Gravatar，我就需要记住所有使用过的 Discourse 站点，并逐一手动更新 Gravatar。

我认为这对 Gravatar 用户来说是非常出乎意料的行为。

---

<div class="post-metadata">

**Author:** ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)\
**Post date:** [2020年五月18日 06:28 UTC](https://meta.discourse.org/t/automatic-updates-of-gravatar-avatars/151370/3 "2020-05-18T06:28:30Z")

</div>

我们目前没有用于更新 Discourse 中 Gravatar 的工作任务。一旦下载，它们将永久保存。

实际上，我们几乎未收到任何关于此问题的投诉。

如果您确实需要为所有用户更新，可以运行以下命令：

```plaintext
./launcher enter app
rails r 'UserAvatar.find_each {|u| print "."; u.update_gravatar!}'

```

该命令需要一段时间才能完成。

---

<div class="post-metadata">

**Author:** ![007](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/007/32/175794_2.png) [@007](https://meta.discourse.org/u/007)\
**Post date:** [2020年五月18日 13:31 UTC](https://meta.discourse.org/t/automatic-updates-of-gravatar-avatars/151370/4 "2020-05-18T13:31:42Z")

</div>

这也会更新已经设置了自定义头像的用户吗？还是仅针对那些没有设置的？我同意这并非必要功能，但这仍然是一个有趣的选项。

---

<div class="post-metadata">

**Author:** ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)\
**Post date:** [2020年五月21日 03:23 UTC](https://meta.discourse.org/t/automatic-updates-of-gravatar-avatars/151370/5 "2020-05-21T03:23:00Z")

</div>

该命令对所有人都有效，但不会切换到 Gravatar。

---

<div class="post-metadata">

**Author:** ![trusktr](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/trusktr/32/116841_2.png) [@trusktr](https://meta.discourse.org/u/trusktr)\
**Post date:** [2020年五月26日 16:55 UTC](https://meta.discourse.org/t/automatic-updates-of-gravatar-avatars/151370/6 "2020-05-26T16:55:38Z")

</div>

> [@sam](#):
>
> 一旦下载完成，它们就会永久保存。

根据我的经验，Gravatar 头像通常会在几分钟后自动更新，至少在我使用过的网站上是这样。WordPress 站点就是很好的例子。

> [@007](#):
>
> 这是否也会更新那些已经设置了自定义头像的用户？

我认为自定义头像应该会覆盖默认设置并保持不变。这就像是在内部作用域中重写了变量，即使外部变量发生变化，它也不会改变。

---

<div class="post-metadata">

**Author:** ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)\
**Post date:** [2020年五月27日 02:47 UTC](https://meta.discourse.org/t/automatic-updates-of-gravatar-avatars/151370/7 "2020-05-27T02:47:03Z")

</div>

> [@trusktr](#):
>
> 根据我的经验，Gravatar 头像通常会在几分钟后自动更新，至少在我使用过的网站上是这样。WordPress 网站就是很好的例子。

许多网站使用 Gravatar 的方式会暴露用户身份。它们直接热链到 Gravatar。这意味着你可以进行诸如暴力破解电子邮件地址之类的操作。

Discourse 会复制头像。

如果用户希望在 Discourse 上更新 Gravatar 头像，他们必须点击刷新按钮。
