首页 各类教程 / 未收录,推送中

第一步

首先在你的博客根目录下创建一个名为 build_index.php的文件,将以下代码放进去

<?php
/**
* 首页静态化脚本
* Blog:www.miss-you.cc
*/
ini_set( 'date.timezone', 'PRC' );

/* 缓存过期时间 单位:秒 */
$expire = 86400;
/* 主动刷新密码  格式:http://你的博客地址/build_index.php?password=123456 */
$password = '123456';
$file_time = @filemtime( 'index.html' );
time() - $file_time > $expire && create_index();
isset( $_GET['password'] ) && $_GET['password'] == $password && create_index();

/**
* 生成 index.html
*/
function create_index()
{
    ob_start();
    include( 'index.php' );
    $content = ob_get_contents();
    $content .= "\n<!-- Create time: " . date( 'Y-m-d H:i:s' ) . " -->";
    /* 调用更新 */
    $content .= "\n<script language=javascript src='build_index.php'></script>";
    ob_clean();
    $res = file_put_contents( 'index.html', $content );
    if ( $res !== false )
    {
        die( 'Create successful' );
    }
    else
    {
        die( 'Create error' );
    }
}

更改主动刷新密码,按需求更改缓存过期时间,保存文件,访问文件路径生成静态文件(index.html)

第二步

在站点修改中将默认文档中的index.html放到index.php之前并保存,否则不会生效
IMG_20210905_173208.jpg
再访问你的博客就是html文件了(即纯静态)

旁白

设置好缓存过期时间后,每个用户访问你的博客时都会以js形式调用一次build_index.php,检测缓存是否过期,若已过期则会生成新的静态文件覆盖之前的(若没过期则不会生成并覆盖)。所以,也可以设置计划任务定时访问http(https)://你的博客地址/build_index.php?password=xxx达到定时更新缓存的目的




文章评论