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