标签归档:https

WordPress主题中GoogleFonts等资源在国内的替代解决。

WordPress的主题中,引用了大量的Google的字体、样式等资源。主要涉及到ajax.googleapis.com、fonts.googleapis.com、themes.googleusercontent.com等域名。鉴于国内对于Google相关资源的访问现状,经常造成整个网页卡住十秒以上加载这些加载不出来的资源。

国内比较出名的解决方法是使用360公共库提供的Google资源代理:http://libs.useso.com/。在WP后台使用一个非常简单的插件,把googleapis.com域名给替换成useso.com即可。使用一段时间后运行良好。

但是useso不支持HTTPS访问,只支持HTTP方式,这就带来一个问题。如果我的站点是使用HTTP的,例如http://pangwenxin.com,这样的话,使用useso没有问题。但是如果我开启了HTTPS访问的话,例如:https://pangwenxin.com,这样样式中的google资源就会自动换成https协议访问,但是useso的资源都没有https协议的,于是页面重新变成卡住。这个可以有两个方法解决,1、自建google资源代理,不过这个需要一个额外的有证书的HTTPS资源域名。2、改wp代码,在判断资源文件scheme的时候,去掉协议判断,写死成http,强烈不推荐。

正想自己建个代理的,随手搜了一下关键词“useso https”,找到了一个中国科技大学博客提供的代理,对这种行为点32个赞!详细见此:https://servers.ustclug.org/index.php/2014/06/blog-googlefonts-speedup/ 。

刚才已经改了改插件,使用上了科大的google资源代理服务,感谢!

解决客户端IE默认设置下无法下载https协议传输的文件的问题

如下代码,ie无法下载

header(‘Content-type: application/’ . $fileType);

header(‘Content-Disposition: attachment; filename=”‘ . $fileName . ‘”‘);

readfile(SOFT_DIR . $fileName);

加了一些header后就可以了

如下:

header(‘Content-type: application/’ . $fileType);

header(‘Content-Disposition: attachment; filename=”‘ . $fileName . ‘”‘);

header(‘Expires: 0’);

header(‘Pragma: public’);
header(‘Cache-Control: must-revalidate, post-check=0, pre-check=0’);

header(‘Cache-Control: public’);

readfile(SOFT_DIR . $fileName);

原因是默认的IE7通过HTTPS下载时,其cache缓存是不给权限的。所以,必须先要对cache进行配置和给其权限。

另外,也可以通过修改客户端的配置来达到目的.