按理来说,Gravatar的头像文件都不大,加载起来应该还不算慢,然而……当我没说……最近的Gravatar走IPv6简直是大幅度拖慢站点的速度,好歹Automatic的服务器还是Anycast的,居然可以慢成这样。
反代
找了一圈并没有找到合适的,V2EX把服务器搬到国外去了,国内也没啥靠谱的反代了,还是自己搭一个吧( ̄▽ ̄)”!
最早使用的百度云加速不太好用,回源很差拖慢速度,所以更换成了腾讯云,反代节点为Azure;2022年将grv
整合到自用api
内,如需引用请及时更新。站点也强制了https跳转,访问速度应该可以保障,如果有需要在下面留言然后拿去用。
源站:
secure.gravatar.com
反代:(已整合到grv.luotianyi.vc
api.lty.fun
)
替换
至于替换到反代上,WP的文件是在/wp-includes/link-template.php
的4148-4152
行左右,实际上i0
/i1
/cn
等几个别名都是一样的,直接替换即可。
1 2 3 4 5 6 7 8 9 10 11 12 |
#原代码信息 if ( is_ssl() ) { $url = 'https://secure.gravatar.com/avatar/' . $email_hash; } else { $url = sprintf( 'http://%d.gravatar.com/avatar/%s', $gravatar_server, $email_hash ); } #替换后的信息 if ( is_ssl() ) { $url = 'https://api.lty.fun/avatar/' . $email_hash; } else { $url = sprintf( 'http://api.lty.fun/avatar/%s', $gravatar_server, $email_hash ); } |
有些主题有些会有定义这个链接的值,其他的也可以修改主题的functions.php
( ̄▽ ̄)”
1 2 3 4 5 6 7 8 9 10 11 |
add_filter('get_avatar', 'proxy_avatar'); function proxy_avatar($avatar) { $gr = 'api.lty.fun'; if (strpos($gr, '/avatar') || strpos($gr, '/gravatar')) { $avatar = preg_replace("/(www|secure|\d).gravatar.com\/avatar/", $gr, $avatar); } else { $avatar = preg_replace("/(www|secure|\d).gravatar.com/", $gr, $avatar); } return $avatar; } |
*本文为个人自用的反代,禁止转载
国内稳定的现在真的挺少了,多谢贡献,拿走了
个人认为在国内直接用Cravatar不错,
虽然服务器稳定性并不算特别好……
但比我自己的廉价机还是要强。
百度云加速应该要备案吧,七牛云也是,没备案的还是要用国外CDN加速
反代只能有一条更好的回源线路,在其实一般博客的访问量下,基本命中不了缓存(还有个缓存过期时间)。这种东西公共CDN命中缓存可能还高点(;′⌒`)