由于 fonts.googleapis.com 在国内访问不稳定,USTC Blog 某些主题中的字体加载不出来。现在 LUG 提供了 Google Fonts 加速服务,已经把 WordPress 原始代码和用户主题内的 Google 字体和 CSS、JS 文件替换成了 LUG 的代理,以加速字体的显示。
事实上 360 网站卫士已经提供了 Google Fonts 加速服务(libs.useso.com),但不支持 HTTPS。HTTPS 博客内只能引用 HTTPS 资源,因此不能用他们的服务,只好自建了。我们的做法与他们类似,我们的服务器通过“国际专线”(你懂的)对用户的请求做代理,并修改 HTTP 响应内容中的 URL(例如 fonts.googleapis.com 中会引用 themes.googleusercontent.com 的资源)。感谢 雨路 和 stephen 的建议。
如果您的博客不在科大 LUG 上,也想使用加速服务,请在 WordPress 源码内进行如下替换:
- ajax.googleapis.com => ajax.lug.ustc.edu.cn
- fonts.googleapis.com => fonts.lug.ustc.edu.cn
- themes.googleusercontent.com => google-themes.lug.ustc.edu.cn
如果您的科大博客在此修改之后出现无法显示字体的问题,请联系我们:support (at) blog.ustc.edu.cn。
是否将域名规范一下,以便更好的管理。
例如使用
${upstream_fqdn}.proxy.lug.ustc.edu.cn
,这样将来配置新的cache在管理上会更容易。否则若干时间后,后面的维护者看到{ajax,fonts}.lug.ustc.edu.cn
这样的域名可能会不清楚具体用途。不知道泛域名是否支持多层的,就是
${upstream_fqdn}.proxy.lug.ustc.edu.cn
能否使用*.proxy.lug.ustc.edu.cn
的cert?如果不能的话,那么创建key会比较麻烦,不过毕竟这是一次性的effort。反域名不支持多层的,SSL 证书里的 * 只能匹配最左侧的一级子域。正是这个原因,才没有用 fqdn 做 proxy 的域名前缀。
sorry,上一条评论最后一句话笔误,”创建cert比较麻烦”
最近也被谷歌字体给折腾
科大一直都很潮~xD
要是有 google safe browsing 加速就好了。
最近用 firefox 老卡死。
弱问什么是 google safe browsing 加速?URL 是?
https://safebrowsing.google.com/
https://sb-ssl.google.com/
这2个,在火狐的about:config里面搜索browser.safebrowsing可以看得
请问,这个方式是干嘛用的?
之前用360的useso方案,不过不支持HTTPS,正准备自己做个代理的,找到了这里。已经用上,谢谢提供服务!
感谢科大贡献的托管服务。
我在此基础上开发了个插件gooreplacer,用于替换页面中的这些google资源。
希望对大家有帮助。
赞
支持,替广大使用者谢谢你们!
我写的插件用到了你们的资源,告知一下!
能否提供这类的代理
https://apis.google.com/js/plusone.js
https服务,502了。。。
因为学校移动运营商出口中断了,非常抱歉。
现在Google Fonts已迁移到北京服务器了,这边的流量应该会小点了把。
其实 Google Fonts 代理的流量不算大,因为国外的几个 VPS 还同时提供着学校里几百人的科学上网服务,每个月有几 T 流量。
fonts.gstatic.com和fonts.googleapis.com这两个域名在北京有镜像,可以直接301回原域名,对于这两个域名的替换也可以取消掉了。
nslookup fonts.lug.ustc.edu.cn 114.114.114.114
Server: 114.114.114.114
Address: 114.114.114.114#53
** server can’t find fonts.lug.ustc.edu.cn: NXDOMAIN
虽然fonts.googleapis.com已经提供了国内访问,但是速度差强人意,下载等待30秒超时的现象还是屡次出现,ajax.googleapis.com依旧不能使用。能不能这样:将你们的所有反待服务的源地址替换为360公共库,然后你们再提供https加密。这样可以减轻国际出口压力,同时加快速度,因为360有缓存
其实我们可以在本机直接缓存的。。。。。
你们是直接缓存在本地计算机上的吧
嗯..500错误了 广西电信
能给出您访问的URL吗?
https://fonts.lug.ustc.edu.cn/css?family=Open+Sans
问题已修复,感谢您的反馈。
目前
*.Googleapis.com
可以被国内的大部分用户直接访问到么? PS:重庆移动可以。
可以是可以,但不是很稳定,有点时间完全访问不了
好吧,告诉各位一个好消息*.Goofont的服务器已经搬回天朝首都了,然后只要引入
https://cdn.bootcss.com/webfont/1.6.16/webfontloader.js?ver=1.0.0
类似的webfont就可以正常访问,至于说你要在那应用webfont。。
提供https://www.bootcss.com 自己去找对应的版本
搬回北京好久了,但是时断时续,最近完全打不开了。你试试 http://fonts.googleapis.com/css?family=Lato:400,700|Roboto+Slab:400,700|Inconsolata:400,700
确认可以高速访问!
也许有的地方可以,但全国大部分地方不可以。截图: http://weibo.com/3969284293/Dlvx1cDHD
SSL访问好像没问题
500错了,,,字体
500错误了, url: http://fonts.lug.ustc.edu.cn/css?family=Maven+Pro:400,700&subset=latin,latin-ext
应该已经修复了. 如果有其他问题欢迎回复.
我用的 noto 字体今天貌似出现 500 错误..
能给出 url 吗?
*.Googleapis.com 不稳定 鉴定完毕 还是需要科大的这个googlefont服务
建议科大博客提供整套源码~供大家学习,自行搭建~
科大博客是开源项目,代码托管在这里:https://git.ustclug.org/groups/ustc-blog。不过自行搭建可能有点难。。。。
我的意思是~提供google font 镜像的程序 供大家搭建使用 这样会不会好一些
线上效果:http://fonts.gmirror.org/
代码:https://github.com/sinkcup/gmirror-fonts
LUG的Google Fonts反向代理只是一段nginx配置,并不是一个独立的程序。关键配置如下:
server {
listen 80;
listen 443;
listen [::]:80;
listen [::]:443;
server_name fonts.lug.ustc.edu.cn;
proxy_cache frontCache;
proxy_cache_valid 200 304 404 12h;
expires 12h;
proxy_cache_use_stale error timeout invalid_header updating
http_500 http_502 http_503 http_504;
location @redirect {
rewrite ^/(.*)$ https://fonts.googleapis.com/$1 redirect;
}
location / {
proxy_pass https://fonts.googleapis.com;
proxy_set_header Host fonts.googleapis.com;
include conf.d/google-fonts-proxy-common;
}
}
还有就是include conf.d/google-fonts-proxy-common;
这个google-fonts-proxy-common;文件是神马内容呢?
resolver 10.254.0.253 ipv6=off;
# disable gzip response, otherwise subs_filter cannot parse it
proxy_set_header Accept-Encoding "";
subs_filter_types text/css text/xml text/javascript text/plain application/octet-stream;
subs_filter //fonts.googleapis.com/ //fonts.lug.ustc.edu.cn/;
subs_filter //ajax.googleapis.com/ //ajax.lug.ustc.edu.cn/;
subs_filter //fonts.gstatic.com/ //fonts-gstatic.lug.ustc.edu.cn/;
subs_filter //gerrit.googlesource.com/ //gerrit-googlesource.lug.ustc.edu.cn/;
subs_filter //themes.googleusercontent.com/ //google-themes.lug.ustc.edu.cn/;
proxy_connect_timeout 3s;
error_page 500 502 504 @redirect;
非常不错! 目前来说 比360的useso好多了
bug:科大博客的邮件新评论通知HTML代码错乱,比如是这样的:
《科大博客提供 Google Fonts 加速》有新的评论。
文章链接: <a href="https://servers.ustclug.org/2014/06/blog-googlefonts-speedup/“>https://servers.ustclug.org/2014/06/blog-googlefonts-speedup/
用户名:Pang
评论:
非常不错! 目前来说 比360的useso好多了
我自己做了一个基于kangle服务端的反向代理,直接读360的,然后更替字节为自己的,然后套上SSL的CDN,速度很好,目前没有出错过。不过目测也没有人用kangle在这、
好像302了
Request URL:https://fonts.lug.ustc.edu.cn/icon?family=Material+Icons
Request Method:GET
Status Code:302 Moved Temporarily
Remote Address:202.38.93.XXX:443
Response Headers
view source
Cache-Control:max-age=43200
Connection:keep-alive
Content-Length:160
Content-Type:text/html
Date:Fri, 24 Jun 2016 09:11:41 GMT
Expires:Fri, 24 Jun 2016 21:11:41 GMT
Location:https://fonts.googleapis.com/icon?family=Material+Icons
您好, 这个问题现在应该已经修复了. 感谢您的报告 😀