佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > 偽靜態(tài)技術(shù)介紹與優(yōu)缺點(diǎn)分析(較完整篇)

偽靜態(tài)技術(shù)介紹與優(yōu)缺點(diǎn)分析(較完整篇)

熱門標(biāo)簽:呼叫中心市場(chǎng)需求 美圖手機(jī) 服務(wù)器配置 網(wǎng)站文章發(fā)布 檢查注冊(cè)表項(xiàng) 銀行業(yè)務(wù) 智能手機(jī) 鐵路電話系統(tǒng)
1、靜態(tài)網(wǎng)頁(yè)與動(dòng)態(tài)比較:
1)靜態(tài)網(wǎng)頁(yè):
優(yōu)勢(shì):A、 對(duì)搜索引擎友好,被收錄的質(zhì)量高;B、訪問速度快;C、資源(cpu 等)占用少。
劣勢(shì):A、對(duì)于大型門戶,或者社區(qū)來(lái)說(shuō),不斷的修改將會(huì)產(chǎn)生大量I/O,會(huì)導(dǎo)致磁盤出現(xiàn)碎片甚至出現(xiàn)磁盤壞道。相當(dāng)恐怖一個(gè)隱患。用戶信息一旦沒有了就沒戲玩了。B、儲(chǔ)存空間占用會(huì)多一些。
2)動(dòng)態(tài)網(wǎng)頁(yè):
優(yōu)勢(shì):相對(duì)于靜態(tài),它的劣勢(shì)也就是動(dòng)態(tài)的優(yōu)勢(shì)所在——占用空間少,對(duì)硬盤友好。
劣勢(shì):A、對(duì)搜索引擎不友好。搜索引擎會(huì)不收錄帶問號(hào)的網(wǎng)址?因?yàn)樗阉饕媾掠捎趩柼?hào)而進(jìn)入死循環(huán)。詳細(xì)可見另外一篇札記(學(xué)習(xí)札記——網(wǎng)頁(yè)搜索基礎(chǔ)知識(shí) )
B、高并發(fā)時(shí)資源占用較多。

而偽靜態(tài)就是在這樣背景下應(yīng)運(yùn)而生了,它在保留動(dòng)態(tài)的優(yōu)點(diǎn)的基礎(chǔ)上,使得網(wǎng)址靜態(tài)化,也就是讓網(wǎng)址里不帶問號(hào),騙過(guò)收錄的爬蟲就行了。這樣完美地糅合了前邊兩者的優(yōu)點(diǎn)。
優(yōu)點(diǎn):靜態(tài)的優(yōu)點(diǎn)+動(dòng)態(tài)的優(yōu)點(diǎn)
不足:流量稍大一些使用偽靜態(tài)就出現(xiàn)CPU使用超負(fù)荷,由于偽靜態(tài)是用正則判斷而不是真實(shí)地址,分辨到底顯示哪個(gè)頁(yè)面的責(zé)任也由直接指定轉(zhuǎn)由CPU來(lái)判斷了,所以CPU占有量的上升,確實(shí)是偽靜態(tài)最大的弊病.

實(shí)現(xiàn)機(jī)制:是利用服務(wù)器端,對(duì)請(qǐng)求的動(dòng)態(tài)頁(yè)面做改動(dòng),讓瀏覽器認(rèn)為訪問的也是靜態(tài)頁(yè)面,這個(gè)時(shí)候,瀏覽器地址欄中顯示的就是靜態(tài)地址信息(不帶問號(hào))了。

兩種實(shí)現(xiàn)方法:
1、使用ISAPI_Rewrite進(jìn)行動(dòng)態(tài)鏈接重寫HTML靜態(tài)網(wǎng)址。ISAPI_Rewrite是一個(gè)dll組件,re_write是iis里的一個(gè)模塊。這個(gè)篩選器實(shí)現(xiàn)是通過(guò)正則表達(dá)式,將動(dòng)態(tài)網(wǎng)頁(yè)網(wǎng)址映射成為靜態(tài)網(wǎng)址。如可將news.asp?id=95通過(guò)re_write將其轉(zhuǎn)換成news/95.html。映射的正則表達(dá)式在httpd.ini文件里進(jìn)行設(shè)置。
舉個(gè)小小例:處理數(shù)據(jù)翻頁(yè),那么寫法是:
More_%=Page%>_%=type%>.html (注:page是翻頁(yè)頁(yè)數(shù),type是數(shù)據(jù)類型)表現(xiàn)形式:More_1_95.html
如果翻下一頁(yè),則為:More_2_95.html,繼續(xù)下一頁(yè)的循環(huán),則是:
More_3_95.html,以此類推。
不過(guò)你需要在httpd.ini文件中增加以下代碼:
RewriteRule /More_(\d+)_(\d+)\.html /jsp/more\.asp\?page=$1type=$2 [N,I] 字串9
如果你的動(dòng)態(tài)程序有多個(gè)參數(shù)需要傳遞,那么就增加多個(gè)(\d+)即可,如下:
RewriteRule /More_(\d+)_(\d+)_(\d+)\.html /asp/more\.asp\?page=$1type=$2type2=$3 [N,I]

優(yōu)點(diǎn):在程序上基本不需做什么變化。麻煩:要實(shí)現(xiàn)這個(gè)需要對(duì)iis進(jìn)行控制,所以當(dāng)你租用別人的服務(wù)器時(shí),則需要先跟服務(wù)商聯(lián)系。(當(dāng)然這個(gè)是對(duì)asp而言,asp.net就不用——直接將dll程序集放到程序中的bin再適當(dāng)?shù)呐渲眉纯蓪?shí)現(xiàn))

2、IIS的404錯(cuò)誤處理機(jī)制:通過(guò)自定義錯(cuò)誤,轉(zhuǎn)向我們準(zhǔn)備好的處理頁(yè)。不過(guò)這種可拓展性有待研究,對(duì)程序處理的統(tǒng)籌要求也高,不大適合實(shí)際應(yīng)用的樣子。

首先,設(shè)置站點(diǎn)屬性-自定意錯(cuò)誤
找到HTTP錯(cuò)誤404,然后編輯屬性->消息類型選中URL->URL填入“/index.asp”,或您的錯(cuò)誤處理頁(yè)面.
這樣,比如用戶或蜘蛛訪問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)前訪問域名
CurrURL=Replace(Request.ServerVariables("QUERY_STRING"),"404;http://"CurrDomain":80","") '當(dāng)前訪問URL
此時(shí)的CurrURL應(yīng)該是:12345.html .
這樣,就得到用戶正在試圖訪問的頁(yè)面.然后提取里邊的文章ID(應(yīng)該為:12345),用正則,這里就不多說(shuō)了.
然后到數(shù)據(jù)庫(kù)里提取出文章內(nèi)容.輸出到頁(yè)面里,就OK了.

結(jié)論:偽靜態(tài)太適合用在普通的企業(yè)網(wǎng)站上了——既不要求高并發(fā),但同時(shí)又很在乎seo(搜索引擎優(yōu)化),而且也要求后臺(tái)可動(dòng)態(tài)更新?!?dāng)然實(shí)現(xiàn)直接生成靜態(tài)頁(yè)也行,因?yàn)檫@種不像社區(qū)那種修改量那么大。

標(biāo)簽:沈陽(yáng) 長(zhǎng)治 上海 河南 紅河 滄州 新疆 樂山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《偽靜態(tài)技術(shù)介紹與優(yōu)缺點(diǎn)分析(較完整篇)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    绥阳县| 中江县| 义马市| 黄大仙区| 内丘县| 青河县| 南澳县| 历史| 东莞市| 白玉县| 大英县| 西青区| 河津市| 云龙县| 长治县| 紫云| 望都县| 孝感市| 法库县| 建德市| 濮阳县| 崇仁县| 广安市| 且末县| 扬中市| 岳池县| 福安市| 甘谷县| 陇西县| 明溪县| 翁牛特旗| 双辽市| 宁陵县| 沛县| 太保市| 延边| 嫩江县| 顺平县| 巢湖市| 浠水县| 永兴县|