第一种方法是真静态的。replace.php

<?php
function replace($row){
    //变量替换
    $title="文章标题";
    $body="这里是主体";
    //参数中的关键字
    $row=str_replace("%title%",$title,$row);
    $row=str_replace("%body%",$body,$row);
    //返回替换的结果
    return $row;
}
//模板文件指针
$f_tem=fopen("temp.htm","r");
//生成文件指针
$f_new=fopen("new.html","w");
//循环读模板文件,每次一行
while(!feof($f_tem)){
    $row=fgets($f_tem);
    $row=replace($row);//替换读入内容的关键字
    fwrite($f_new,$row);//将替换后的内容写入生成 的html文件
}
//关才指针
fclose($f_new);
fclose($f_tem);
?>

new.html

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>文章标题</title>
</head>
<body>
<h1>文章标题</h1>
<hr>
这里是主体
</body>
</html>

temp.htm

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>%title%</title>
</head>
<body>
<h1>%title%</h1>
<hr>
<pre>%body%</pre>
</body>
</html>

第二法:php静态

1 . 如何让的本地APACHE器.htaccess 
如何让的本地APACHE器&quot;.htaccess&quot;呢?其实只要简朴修改一下apache的httpd.conf设置就让APACHE.htaccess了,来看看操作 

打开httpd.conf(在那里? APACHE目录的CONF目录里面),用文本编纂器打开后,查找 
(1) 
Options FollowSymLinks 
AllowOverride None 

改为 
Options FollowSymLinks 
AllowOverride All 
改为

RewriteEngine on
RewriteRule ^/test.html$ /index.php?id=$1
#ErrorDocument 404 /fileOp.php

首先去掉LoadModule rewrite_module modules/mod_rewrite.so前面的注释符号#,然后把所有的AllowOverride None都改成AllowOverride All才行。实际上,我在调试的时候并没有把所有的AllowOverride None都改成AllowOverride All,如果我全部修改了反而还出错。可能情况有所不同吧。(一开始,我并未去了此#,试了数次未果,真是上火了,所以说做事一定要好好的仔细一番)

第三种,以下来自传智博客中的

使用缓存来处理:

ob_start();

中文乱码之处理方法:就是header未缓存。

现在使用比较多是的wei静态加ob缓存。