本站使用了nginx反向代理镜像了gravatar,这篇教程有宝塔镜像Gravatar和通过cdn反向代理镜像Gravatar

Gravatar介绍

当我们在很多博客或者网站上留言评论的时候,会看到有些人的头像很酷,很个性化,但是这个博客和网站本身并没有提供设置头像的功能,感觉有点神奇。那么是怎么做到的呢?其实是用了Gravatar。

Gravatar,全称Globally Recognized Avatar。翻译成中文为全球头像。

Gravatar的概念首先是在国外的独立WordPress博客中兴起的,当你到任何一个支持Gravatar的网站留言时,这个网站都会根据你所提供的Email地址为你显示出匹配的头像。当然,这个头像,是需要你事先到Gravatar的网站注册并上传的,否则,在这个网站上,就只会显示成一个默认的头像。

Gravatar的概念最早出现在国外的独立WordPress博客中。当您在任何支持Gravatar的网站上留言时,该网站都会根据您提供的电子邮件地址为您显示出匹配的头像。当然这个前提是在Gravatar的网站上注册并且上传你的头像,否则只会显示为默认头像。

当你访问一个支持gravatar头像的网站时,只需输入你注册的邮箱账号,就会自动调用gravatar的api,转换成保存的头像。这样,就可以为大多数程序提供个人头像存储服务

Gravatar使用

使用此服务时,需要在官网注册账号,上传头像。

上传后会对头像进行审核,然后管理员会根据图片中包含的内容分为一个等级(G普通级,PG辅导级,R和X为限制等级)。

通过审核之后这个头像就可以用了。在任何支持Gravatar的地方,填写申请注册头像的邮箱地址,您的头像将出现在留言中。可以展示给任何一位访客看。

Gravatar调用

因为gravatar目前服务极不稳定,所以推荐使用国内镜像源。

换源方法:一般在模板文件的functions.php文件中,搜索gravatar,然后直接替换搜索到的域名。

国内Gravatar镜像源收集

gravatar官方的www https://www.gravatar.com/avatar/

gravatar官方的cn https://cn.gravatar.com/avatar/

gravatar官方的en https://en.gravatar.com/avatar/

gravatar官方的secure https://secure.gravatar.com/avatar/

V2EX https://cdn.v2ex.com/gravatar/

Loli https://gravatar.loli.net/avatar/

极客族 https://sdn.geekzu.org/avatar/

银狐笔记 https://gravatar.ityinhu.com/avatar/

宝塔自建Gravatar镜像源

创建一个新网站

宝塔面板中新建一个网站,FTP、数据库都不需要,PHP选纯静态。

配置反向代理

目标URL: https://www.gravatar.com (结尾没斜线)。

发送域名:www.gravatar.com 。

内容替换:将 www.gravatar.com 替换为你自己的域名。

缓存时长:720分钟(六小时)。

如下图所示:

镜像Gravatar 自建Gravatar加速镜像源

NGINX配置文件

设置缓存时长的建议

如果你对时效性要求高,建议选择 10分钟 、 30分钟 、 60分钟 的缓存时长。

如果你对性价比要求高,可以选择 360分钟 、 720分钟 、 1440分钟 的缓存时长。

nginx缓存

当客户端请求头像时,如果服务器上没有缓存,则从源服务器中获取头像并缓存在服务器上。如果服务器上有缓存,则从服务器的缓存中提取内容,从而节省服务器流量并减轻源服务器的压力。所以当用户头像发生变化时,只有缓存失效后才能再次获取新的头像。

当缓存内容超过缓存时间时,将自动从服务器上删除,以释放空间。

常见问题

1、HTTPS 无法部署

原因一:使用了文件验证

办法:使用DNS认证申请SSL证书

原因二:开启了反向代理

办法:先申请https证书再开启反向代理

2、反代访问出错

原因:反代了子目录,与源站网页有冲突

办法:反代根目录 /

利用CDN加速 Gravatar 头像的方法

又拍云 cdn 加速 Gravatar 头像(其他CDN方法类似)

1.首先进入创建又拍云 cdn 服务,加速地址填写你想要加速的域名,

源站地址: secure.gravatar.com

端口号: 443

镜像Gravatar 自建Gravatar加速镜像源

2.创建完成后,在域名解析处添加一个cname解析,然后申请一个域名证书并绑定域名证书(这一步必须完成,否则浏览器会判定不安全)

镜像Gravatar 自建Gravatar加速镜像源

3.添加缓存规则并自定义天数

4.打卡智能压缩和webp自适应,其他不需要设置

5.在模板后台设置Gravatar镜像源地址,前面部分填写自己的加速域名,就完成了。

6.如后台不能直接设置,直接打开 Typecho 安装目录下的 config.inc.php 文件,将以下代码加到文件末尾即可。(镜像源地址替换成自己的)

6.如果后台不能直接设置,打开Typecho安装目录下的config.inc.php文件,并在文件末尾添加以下代码。(镜像的地址替换成自己的网址请勿直接使用本站的)

/** 定义Gravatar头像源 */
define('__TYPECHO_GRAVATAR_PREFIX__', 'https://gravatar.ityinhu.com/avatar/');

7、清除浏览器缓存,现在gravatar变成自己的源了。

镜像Gravatar 自建Gravatar加速镜像源

参考文章:《使用宝塔面板镜像网站教程