顧名思義, 偽靜態(tài)是相對(duì)真實(shí)靜態(tài)來(lái)講的.通常我們?yōu)榱烁玫木徑夥⻊?wù)器壓力,和增強(qiáng)搜索引擎的友好面.都將文章內(nèi)容生成靜態(tài)頁(yè)面.但是有的朋友為了實(shí)時(shí)的顯示一些信息.或者還想運(yùn)用動(dòng)態(tài)腳本解決一些問(wèn)題.不能用靜態(tài)的方式來(lái)展示網(wǎng)站內(nèi)容.但是這就損失了對(duì)搜索引擎的友好面.怎么樣在兩者之間找個(gè)中間方法呢,這就產(chǎn)生了偽靜態(tài)技術(shù).就是展示出來(lái)的是以.html一類的靜態(tài)頁(yè)面形式,但其實(shí)是用ASP一類的動(dòng)態(tài)腳本來(lái)處理的.
我的一個(gè)思路是用IIS的404錯(cuò)誤處理機(jī)制來(lái)實(shí)現(xiàn)的.這個(gè)比rewrite技術(shù)要靈活得多.
首先,設(shè)置站點(diǎn)屬性-自定意錯(cuò)誤,找到HTTP錯(cuò)誤404,然后編輯屬性->消息類型選中URL->URL填入“/index.asp”,或您的錯(cuò)誤處理頁(yè)面.
這樣,比如用戶或蜘蛛訪問(wèn)http://tech.todo.net.cn/12345.html 時(shí)(12345為文章在數(shù)據(jù)庫(kù)的ID).由于些頁(yè)面不存在,所以觸發(fā)了404錯(cuò)誤.轉(zhuǎn)向了index.asp 在index.asp里加
CurrDomain=Request.ServerVariables("HTTP_HOST") '當(dāng)前訪問(wèn)域名
CurrURL=Replace(Request.ServerVariables("QUERY_STRING"),"404;http://"&CurrDomain&":80","") '當(dāng)前訪問(wèn)URL
此時(shí)的CurrURL應(yīng)該是:12345.html .
這樣,就得到用戶正在試圖訪問(wèn)的頁(yè)面.然后提取里邊的文章ID(應(yīng)該為:12345),用正則,這里就不多說(shuō)了.
然后到數(shù)據(jù)庫(kù)里提取出文章內(nèi)容.輸出到頁(yè)面里,就OK了. 這樣.用戶或蜘蛛看到的URL還是他訪問(wèn)的URL.而我們對(duì)內(nèi)容的處理上可以用到了動(dòng)態(tài)技術(shù).這就是我們想要的結(jié)果.說(shuō)得簡(jiǎn)單了一些.但是基本思路就是這樣了.
|