PHP 實現(xiàn)頁面靜態(tài)化的幾種方法
1、通過buffer來實現(xiàn)
需要用file_put_contents ob_get_clean()等內(nèi)置函數(shù)
ob_start ();
include "filterpost.html";
$mtime = filemtime("./filterpost.html");//在這里可以判斷文件是否存在和過期,然后做緩存或者生成靜態(tài)文件操作
$pageCache = str_replace('submit2','login',ob_get_contents());//將緩存去中的內(nèi)容替換
ob_end_clean();
echo $mtime;
echo $pageCache;
2、通過$_SERVER['PATH_INFO']來實現(xiàn)
echo '<pre>';
print_r($_SERVER);
preg_match('/^\/(\d+)\/(\d+)\.html/',$_SERVER['PATH_INFO'],$arr);
print_r($arr);
3、通過Apache配置來實現(xiàn)
需要開啟rewrite重寫模塊
通過rewrite來配置vhost
RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteRule ^/detail/([0-9]*).html$ /detail.php?id=$1
如果服務(wù)器下不存在文件夾及其文件,那么就重寫定義到/detail.php
http://localhost/detail/1.html
如果沒有detail文件夾下的1.html 那么就重寫定義到./detail.php
4、通過Nginx配置來實現(xiàn)
在nginx.conf中配置
rewrite ^/detail/(\d+)\.html$ /detail.php?id=$1 last;
當然建議大家參考一些比較成熟的cms的方法,對于頁面數(shù)量不大的話,第一種方法還是不錯的。
相關(guān)文章
使用array mutisort 實現(xiàn)按某字段對數(shù)據(jù)排序
本篇文章是對使用array mutisort 實現(xiàn)按某字段對數(shù)據(jù)排序的方法進行了詳細的分析介紹,需要的朋友參考下2013-06-06
PHP+MySql+jQuery實現(xiàn)的"頂"和"踩"投票功能
這篇文章主要為大家詳細介紹了PHP+MySql+jQuery實現(xiàn)的"頂"和"踩"投票功能,具有一定的參考價值,感興趣的朋友可以參考一下2016-05-05
那些年我們錯過的魔術(shù)方法(Magic Methods)
PHP 對象的一個優(yōu)勢是可以使用魔術(shù)方法,這些方法可以不需要修改外部代碼而重寫一個類的默認行為,這使得PHP 語法有更少的冗余性和更具有擴展性。這些方法很好識別,他們都是以雙下劃線(__)開始的2014-01-01
PHP實現(xiàn)CSV文件的導(dǎo)入和導(dǎo)出類
這篇文章主要介紹了PHP實現(xiàn)CSV文件的導(dǎo)入和導(dǎo)出類,實例分析了php針對csv文件的操作技巧,非常具有實用價值,需要的朋友可以參考下2015-03-03
ThinkPHP使用心得分享-上傳類UploadFile的使用
ThinkPHP中的UploadFile類用于處理文件上傳,本文小總結(jié)了一下關(guān)于學習過程中對UploadFile類的使用方法。2014-05-05

