GOGO专业大尺度亚洲高清人体,清纯校花的被cao日常np,日本三级香港三级人妇99,亭亭玉立国色天香八戒,秋霞电影在线观看

200

Z-Blog分類標簽全站靜態化方案

時(shi)間: 2013-03-04 17:29:05   點(dian)擊數: 149106   來源(yuan): 耐思智慧

Z-Blog目前已經實現了首(shou)頁(ye)和(he)文(wen)(wen)章頁(ye)的(de)靜態化,可以生成HTML文(wen)(wen)件(jian),但是系(xi)統的(de)分類(lei)頁(ye)、標(biao)簽Tags頁(ye)、歸(gui)(gui)檔(dang)頁(ye)和(he)作(zuo)者頁(ye)都沒(mei)有實現靜態化,本文(wen)(wen)將講述(shu)一個(ge)非(fei)常簡(jian)單(dan)的(de)方案(an),能夠自動生成各(ge)個(ge)分類(lei)頁(ye)、歸(gui)(gui)檔(dang)頁(ye)和(he)Tags的(de)靜態HTML頁(ye)面,以便用戶將網站遷(qian)移到Apache等不支持ASP的(de)主機上。

Z-Blog的(de)分類(lei)頁(ye)、標簽Tags頁(ye)、歸(gui)檔(dang)頁(ye)和作者頁(ye)都是(shi)調用catalog.asp這個(ge)(ge)文(wen)件(jian)(jian)(jian),因此,修改這個(ge)(ge)文(wen)件(jian)(jian)(jian),當用戶調用該文(wen)件(jian)(jian)(jian)的(de)時候,自動生成針對該頁(ye)面的(de)HTML文(wen)件(jian)(jian)(jian)。如果訪客(ke)反(fan)復(fu)讀取這個(ge)(ge)文(wen)件(jian)(jian)(jian),那么在一定時間范圍內(nei),可以(yi)直(zhi)接在文(wen)件(jian)(jian)(jian)開頭使用靜(jing)態文(wen)件(jian)(jian)(jian),以(yi)達到(dao)節省系統資源(yuan)的(de)目的(de)。

具體(ti)的(de)(de)修改方法(fa)是,先在根(gen)(gen)下建立一個目(mu)錄(lu)cat,然(ran)后使用(yong)編輯(ji)器打開Z-Blog根(gen)(gen)目(mu)錄(lu)下的(de)(de)catalog.asp文件,在文件開頭加(jia)入如(ru)下的(de)(de)代碼:

Dim objFSO
Dim objFile
Dim strFileName
Dim strFileTime
Dim isBuildFile
if Request.QueryString("cate")<>"" then
if Request.QueryString( "page")<>""then
strFileName = "cate" + "_" + Request.QueryString("cate") + "_" + Request.QueryString("page") +".html"
else
strFileName = "cate" + "_" + Request.QueryString("cate") + ".html"
end if
elseif Request.QueryString("tags")<>"" then
if Request.QueryString( "page")<>""then
strFileName = "tags" + "_" + Request.QueryString("tags") + "_" + Request.QueryString("page") +".html"
else
strFileName = "tags" + "_" + Request.QueryString("tags") + ".html"
end if
elseif Request.QueryString("auth")<>"" then
if Request.QueryString( "page")<>""then
strFileName = "auth" + "_" + Request.QueryString("auth") + "_" + Request.QueryString("page") +".html"
else
strFileName = "auth" + "_" + Request.QueryString("auth") + ".html"
end if
elseif Request.QueryString("date")<>"" then
if Request.QueryString( "page")<>""then
strFileName = "date" + "_" + Request.QueryString("date") + "_" + Request.QueryString("page") +".html"
else
strFileName = "date" + "_" + Request.QueryString("date") + ".html"
end if
elseif Request.QueryString("page")<>"" then
strFileName = "default" + "_" + Request.QueryString("page") +".html"
else
strFileName = "default_1" + ".html"
end If
isBuildFile = False
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(Server.MapPath(strFileName)) Then
Set objFile = objFSO.GetFile(Server.MapPath(strFileName))
strFileTime = objFile.DateLastModified
Set objFile = Nothing
If datediff( "h",strFileTime,Now()) > 1 Then
isBuildFile = True
Else
Server.Transfer strFileName
Response.End
End If
Else
isBuildFile = True
End If
Set objFSO = Nothing

 找到 Response.Write ArtList.html 一(yi)行,在其后(hou)面增(zeng)加(jia)如下代碼(ma):

If isBuildFile Then
ArtList.FileName=strFileName
ArtList.Directory= "cat"
ArtList.Save
End if

這樣(yang),系統就會自動生(sheng)成全(quan)部動態(tai)頁面的靜(jing)態(tai)HTML文件,并且在1小時內不會重復生(sheng)成,期間如果(guo)還有調用(yong),則自動載入靜(jing)態(tai)HTML文件,以節省系統資源。

經過這番處理,Z-Blog的(de)全部分類(lei)和Tags就都可以生成靜態HTML頁面了。

經過(guo)靜態化之(zhi)后,就可以將Z-Blog全站都放(fang)在PHP+Apache的主(zhu)機上了(le)。具(ju)體方法是,配置Apache主(zhu)機,使其用php的方法解析(xi)asp,然后編輯catalog.asp這個文件,將其代碼(ma)修改(gai)為如下即可:

if (isset($_GET['cate'])) {
if (isset($_GET['page'])) {
$strFileName = "cate_".strip_tags(stripslashes(trim($_GET['cate'])))."_".strip_tags(stripslashes(trim($_GET['page']))).".html";
} else {
$strFileName = "cate_".strip_tags(stripslashes(trim($_GET['cate']))).".html";
}
} else if (isset($_GET['tags'])) {
if (isset($_GET['page'])) {
$strFileName = "tags_".strip_tags(stripslashes(trim($_GET['tags'])))."_".strip_tags(stripslashes(trim($_GET['page']))).".html";
} else {
$strFileName = "tags_".strip_tags(stripslashes(trim($_GET['tags']))).".html";
}
} else if (isset($_GET['auth'])) {
if (isset($_GET['page'])) {
$strFileName = "auth_".strip_tags(stripslashes(trim($_GET['auth'])))."_".strip_tags(stripslashes(trim($_GET['page']))).".html";
} else {
$strFileName = "auth_".strip_tags(stripslashes(trim($_GET['auth']))).".html";
}
} else if (isset($_GET['date'])) {
if (isset($_GET['page'])) {
$strFileName = "date_".strip_tags(stripslashes(trim($_GET['date'])))."_".strip_tags(stripslashes(trim($_GET['page']))).".html";
} else {
$strFileName = "date_".strip_tags(stripslashes(trim($_GET['date']))).".html";
}
} else if (isset($_GET['page'])) {
$strFileName = "default_".strip_tags(stripslashes(trim($_GET['page']))).".html";
} else {
$strFileName = "../default.html";
}
define("HTML_FILE",  dirname(__FILE__)."/".$strFileName);
if (file_exists(HTML_FILE)) {
echo(file_get_contents(HTML_FILE));
exit(0);
} else {
exit(0);
}

如果不想用PHP來處理,也可以直接配置.htaccess文件來實現同樣的功能,.htaccess文件的內容如下:

RewriteRule ^(.*)/cat/?cate=(.+)&page=(.+)$ $1/cat/cate_$2_$3.html
RewriteRule ^(.*)/cat/?cate=(.+)$ $1/cat/cate_$2.html
RewriteRule ^(.*)/cat/?tags=(.+)&page=(.+)$ $1/cat/tags_$2_$3.html
RewriteRule ^(.*)/cat/?tags=(.+)$ $1/cat/tags_$2.html
RewriteRule ^(.*)/cat/?auth=(.+)&page=(.+)$ $1/cat/auth_$2_$3.html
RewriteRule ^(.*)/cat/?auth=(.+)$ $1/cat/auth_$2.html
RewriteRule ^(.*)/cat/?date=(.+)&page=(.+)$ $1/cat/date_$2_$3.html
RewriteRule ^(.*)/cat/?date=(.+)$ $1/cat/date_$2.html
RewriteRule ^(.*)/cat/?page=(.+)$ $1/cat/default_$2.html

上一篇:網頁設計核心內容對視覺表現的影響 下一篇:常用四大博客程序安裝與評測

旗下網站:耐思智慧 - - - 中文域名:

耐思智慧 © 版權所有 Copyright © 2000-2025 szjicheng.cn,Inc. All rights reserved

備案號碼:   公安備案號: 公安備案

聲明:本網站(zhan)中(zhong)所使用(yong)到的其他各(ge)種版(ban)(ban)權內容(rong)(rong),包(bao)括但不限于文章、圖片、視頻(pin)、音頻(pin)、字體等內容(rong)(rong)版(ban)(ban)權歸原作(zuo)者所有,如權利所有人發現,請及時告(gao)知(zhi),以便我們刪除(chu)版(ban)(ban)權內容(rong)(rong)

本(ben)站程序界面、源代碼受相關法(fa)律保(bao)護, 未經授(shou)權, 嚴禁使用; 耐思(si)智慧 © 為我公司注冊(ce)商標, 未經授(shou)權, 嚴禁使用

法律顧問: