一、偽靜態(tài)
配置方面:
1、找到apache的安裝目錄下的conf下的httpd.conf文件,打開文件修改
LoadModule rewrite_module modules/mod_rewrite.so這行代碼,他前面有個#號,把#號刪掉
2、還是那個文件,打開,找到
<Directory />
Options FollowSymLinks ExecCGI Indexes
AllowOverride None
Order deny,allow
Deny from all
Satisfy all
</Directory>
這個節(jié)點(diǎn),把None改為All.
3、重啟apache服務(wù)
4、最關(guān)鍵的一點(diǎn),在你得項(xiàng)目目錄下創(chuàng)建.htaccess文件,文件沒有名稱,看上去只是后綴名
具體創(chuàng)建方法不能直接創(chuàng)建,先創(chuàng)建個txt文件(其他的也行),然后另存問,把名字改為.htaccess,并且選所有文件,創(chuàng)建好后,就要制定規(guī)則了。
在文件里寫代碼:
<IfModule mod_rewrite.c>
RewriteEngine on//on為打開,off為關(guān)閉
RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$ index.php?action=$1&id=$2
</IfModule>
//([a-zA-Z]{1,})-([0-9]{1,}).html$是規(guī)則,index.php?action=$1&id=$2是要替換的格式,$1代表第一個括號匹配的值,$2代表第二個,如此類推!!
二、采用od_start()緩存,生成真靜態(tài)
if(file_exists("./index.htm"))//看靜態(tài)index.htm文件是否存在
{
$time=time(); //文件修改時間和現(xiàn)在時間相差?的話,直接導(dǎo)向htm文件,否則重新生成htm
if($time-filemtime("./index.htm")< 600)
{
header("Location:classhtml/main.htm"); }
}
//在你的開始處加入ob_start();CHINAZ
//首頁內(nèi)容,就是你的動態(tài)部分了
//在結(jié)尾加入ob_end_clean(),并把本頁輸出到一個變量中
$temp=ob_get_contents();
ob_end_clean();
//寫入文件
$fp=fopen("./index.htm",'w');
fwrite($fp,$temp) or die('寫文件錯誤');
//echo"生成HTML完成!";