解决Gitlab的Gravatar头像无法显示的问题


目录[-]

普通版Gitlab:

Omnibus 版 Gitlab

背景:Gravatar 的服务最近一直都无法访问,很多服务都遭了殃,虽然不影响使用但是非常碍眼。


最近我在尝试 Omnibus 的 gitlab,顺手打算看看能不能解决一下,发现结合网上常见的 duoshuo CDN的方式还是比较容易的,记录如下:


普通版Gitlab:


编辑 gitlab.yml , 找到如下部分:


## Gravatar

gravatar:

    enabled: true                 # Use user avatar image from Gravatar.com (default: true)

    # gravatar urls: possible placeholders: %{hash} %{size} %{email}

    # plain_url: "http://..."     # default: http://www.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon

    # ssl_url:   "https://..."    # default: https://secure.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon

把 plain_url 的注释去掉,写成如下内容:


plain_url: "http://gravatar.duoshuo.com/avatar/%{hash}?s=%{size}&d=identicon"

重启服务


如果gitlab不是新搭建的,依然会有一些头像地址会指向原先的地址,需要执行下面的命令修正缓存数据(感谢的objdump补充):


rake cache:clear RAILS_ENV=production

Omnibus 版 Gitlab


编辑 /etc/gitlab/gitlab.rb,增加下面这一行:


gitlab_rails['gravatar_plain_url'] = 'http://gravatar.duoshuo.com/avatar/%{hash}?s=%{size}&d=identicon'

在命令行执行


sudo gitlab-ctl reconfigure 

sudo gitlab-rake cache:clear RAILS_ENV=production


你可能感兴趣的:(解决Gitlab的Gravatar头像无法显示的问题)