因为某些原因在中国大陆Gravatar头像彻底无法进行访问。由于主题前端一般都可以设置第三方国内镜像源,所以没什么问题。而Typecho后台显示却无法正常加载,很是让人难受。

解决方案

从网站根目录进入/var/Typecho打开Common.php,找到名为gravatarUrlfunction,大概在932行左右,可以用搜索功能查找一下。找到如下所示的代码:

if (defined('__TYPECHO_GRAVATAR_PREFIX__')) {
    $url = __TYPECHO_GRAVATAR_PREFIX__;
} else {
    $url = $isSecure ? 'https://secure.gravatar.com' : 'http://www.gravatar.com';
    $url .= '/avatar/';
}

修改https://secure.gravatar.com为国内第三方镜像源地址,修改/avatar/为镜像源的文件夹,如此操作后台即可正常显示Gravatar头像。

不要忘记https://和文件夹两侧的/

示例

推荐第三方国内镜像源:

  1. https://sdn.geekzu.org/avatar/ (推荐,我在用的)
  2. https://dn-qiniu-avatar.qbox.me/avatar/
  3. https://cdn.v2ex.com/gravatar/
  4. https://gravatar.loli.net/avatar/

以第一个镜像源为例,使用上文所述的方法修改完后的结果为:

if (defined('__TYPECHO_GRAVATAR_PREFIX__')) {
    $url = __TYPECHO_GRAVATAR_PREFIX__;
} else {
    $url = $isSecure ? 'https://sdn.geekzu.org' : 'http://www.gravatar.com';
    $url .= '/avatar/';
}
最后修改:2021 年 09 月 04 日 03 : 35 PM
如果觉得我的文章对你有用,请随意赞赏