SaHtmlCache 介绍
Typecho HTML 静态缓存插件 SaHtmlCache V1.0.0 发布
我这个老博客文章比较多,为了节省服务器资源,减少数据库读写次数,于是就花了点时间,做了typecho第一个插件
同一个页面先看一下启用前和启用后的差别
未启用缓存加载页面需要3.94s
启用缓存后加载页面需要1.49s
服务器配置高的话,基本上感觉不到差距,但是网站访问量大了之后,服务器资源就很紧缺了,节省一半的时间效果还是很明显的哇,哈哈哈
SaHtmlCache 下载
https://github.com/cnsamool/SaHtmlCache-For-Typecho
SaHtmlCache 安装方法
1、将SaHtmlCache.rar 解压后上传于站点/usr/plugins/目录下
2、PHP.ini环境配置文件要改一下,将allow_url_include = On
3、永久链接(伪静态)设置为/{cid}.html (目前是通过文章编号cid生成文件的,如果想生成个性化文件名,请自行修改一下插件生成文件名)
4、将cache目录设为可读可写,Linux是777权限
5、修改站点根目录下index.php,添加以下代码
/** SaHtmlCach 重定向到HTML静态文件 */
$safile = $_SERVER['REQUEST_URI'];
if(strpos($safile,'comment')<1){
if ($safile=='/'||$safile=='index.php'){
$safile = 'index.html';
}
$sahtmlfile = './usr/plugins/SaHtmlCache/cache/'.$safile;
if(file_exists($sahtmlfile)){
include($sahtmlfile);
exit;
}
}
如图所示
6、后台启用插件,并生成HTML文件
伪静态设置参考
帮助说明
1、如何区分HTML缓存是否生效?
查看网页源代码,如果顶部有SaCache created 2020/01/04 04:33:14代码,说明已经成功,如图所示
2、搜索功能是否影响?
不影响博客搜索页
3、分类目录页是否可以缓存?
暂时不支持
4、评论页是否支持HMTL缓存?
支持,需要定期生成HMTL文件
5、为何生成HTML比较卡?
全站生成HTML慎用,比较耗服务器资源,不过一劳永逸,耐心等待吧
6、我是否可以修改代码?
可以随便修改代码,如果您有优化过代码,或者新增了功能,记得发一份代码给我6042506@qq.com
31 条评论
看了下写的代码,好像并不能区分开独立页面
大佬,发布文章或更新文章都需要重新生成吗?
嗯,需要手动生成
开启插件后独立页面变空白了,文章页面没问题,请问这是怎么回事?文章和独立页面的路径都换成了/{cid}.html了
emmm...下载地址好像失效了?
速度非常快,但是与qq互联登陆不能一起用。如果不用QQ互联登陆的话非常香!
原来是将文章页直接生成html,我以为是静态资源缓存!
生成静态页面的
自己搞定了,感谢站长!
嗯嗯,可以根据slug别名生成文件的
插件非常需要,但是有个问题,我想根据别名来生成:
private static function sa_GetHtmlContent($slug)
这样改是不是不对?报错!
一直在找这样的插件...实用性很强很强
多谢肯定
创建缓存报错,错误显示跟生成的.html文件一致,请dalao看看是什么问题
Warning: include(): https:// wrapper is disabled in the server configuration by allow_url_include=0 in /www/wwwroot/ilolis.com/usr/plugins/SaHtmlCache/Plugin.php on line 417
Warning: include(https://ilolis.com/8.html): failed to open stream: no suitable wrapper could be found in /www/wwwroot/ilolis.com/usr/plugins/SaHtmlCache/Plugin.php on line 417
Warning: include(): Failed opening 'https://ilolis.com/8.html' for inclusion (include_path='.:/www/server/php/73/lib/php:/www/wwwroot/ilolis.com/var:/www/wwwroot/ilolis.com/usr/plugins') in /www/wwwroot/ilolis.com/usr/plugins/SaHtmlCache/Plugin.php on line 417
请查看说明文件,PHP.php要改一下配置allow_url_include = On