AI智能总结:

这段代码将 PHP 页面缓存为静态 HTML 文件,从而显著提高网站加载速度。通过在 PHP 文件中捕获输出并写入 HTML 文件,并使用一个监控程序定期更新缓存内容,可以保证网站首页内容的更新。

前言

祝大家十一快乐!感谢大家一路陪伴!

之前我在杜老师的文章里看到优化网站速度的内容:
杜老师的网站访问速度快吗?—— 杜老师说
里面提到一点可以用插件将typecho静态化,提高效率,增加网站反应速度。
我看到之后十分欣喜,寻思网站又快了一点
结果网上下载了两个静态化插件,不是做不到首页的缓存,就是首页缓存后不更新,导致文章不能正常显示
所以今天分享的php代码可以手动将主页静态化,也就是存储成HTML,从而让网站加载HTML来代替php,提高加载网站首页的速度
经过右侧网站载入速度的对比,原本加载用时40毫秒左右,可以降至三毫秒左右。
使用前
使用后
(我不知道这种对比方式是否合理,但是速度确实是有明显提升。另外,上面的数据多次测量已经去除了偶然性
另外如你们现在所见,网站的布局并没有什么影响,没有因为静态化而导致功能失效(其实还是有的,顶栏的统计失效了,但是我估计很少有人会用那个功能 )。

正文

既然废话已经多说,那我们直接上代码

<?php
ob_start(); //打开缓冲区
include("index.php");
$content = ob_get_contents(); //得到缓冲区的内容
$content .= "\n<script language=javascript src=\"new_html.php?t=".$nowtime."\"></script>"; //防止缓存
file_put_contents("index.html",$content);
if (!function_exists("file_put_contents"))
{
function file_put_contents($fn,$fs)
{
$fp=fopen($fn,"w+");
fputs($fp,$fs);
fclose($fp);
}
}

这些代码的大概意思就是说:把php文件的内容缓存下来,保存到index.html
使用方法也是相当简单:

  1. 把上面这些代码,放进一个php文件里
  2. 把php文件,上传到主机的根目录
    诶嘿,我们直接访问这个php文件,就会发现根目录里出现了一个HTML文件。
  3. 下一步我们在网站后台面板(各种面板的设置可能不一样,具体在网上搜索一下就能找到)里,把默认文件里html文件优先级调到最高,php调到第二
  4. 最后一步,我们需要在网上找一个监控程序(宝塔面板后台是自带的),让他来定时刷新我们的php程序,设置为大概一个小时,从而保证我们的首页内容持续进行更新。
    监控程序
    5.enjoy

    总结

    通过这种方式,提高网站访问速度,效果还不错鸭

最后修改:2024 年 10 月 06 日
小贴士:本站看板娘是喵布,站长认为她非常可爱!