1.關(guān)于偽靜態(tài)的用處
有些用戶覺(jué)得,偽靜態(tài)和真靜態(tài)實(shí)際被收錄量會(huì)相差非常大,其實(shí)不然,從你個(gè)人角度,你去判斷一下一個(gè)帖子到底是真靜態(tài)還是偽靜態(tài)?
估計(jì)非常難看得出,因?yàn)樗^靜態(tài)的意思,就是地址中不帶問(wèn)號(hào),不帶問(wèn)號(hào)的就是靜態(tài),管他是真的還是偽的?搜索引擎看得出嗎?
所以說(shuō),其實(shí)不論是真的還是偽的,其實(shí)對(duì)于搜索引擎來(lái)說(shuō)都是相同的,搜索引擎沒(méi)有說(shuō),你這個(gè)是偽的,我不收錄你.
揪根掘底的來(lái)說(shuō),為什么搜索引擎會(huì)不收錄帶問(wèn)號(hào)的網(wǎng)址?因?yàn)樗阉饕媾掠捎趩?wèn)號(hào)而進(jìn)入死循環(huán)(以前動(dòng)網(wǎng)就有這樣一個(gè)漏洞,蜘蛛進(jìn)去出不來(lái)了),所以非常多時(shí)候帶問(wèn)號(hào)的地址是不會(huì)進(jìn)去的,偽靜態(tài)對(duì)于搜索引擎來(lái)說(shuō),其實(shí)就是靜態(tài),因?yàn)榈刂分袥](méi)有帶問(wèn)號(hào),所以沒(méi)有真靜態(tài)比偽靜態(tài)收錄得多的說(shuō)法.
2.為什么選擇偽靜態(tài)
有非常多用戶說(shuō):
真靜態(tài)不好嗎?
為什么不用真靜態(tài)?
訪問(wèn)起來(lái)不是更快嗎?
負(fù)載不是更好嗎?
等等等等...
在這里,其實(shí)只用一個(gè)問(wèn)題來(lái)回答:為什么選擇MYSQL.
非常多用戶大概不明白為什么那么多大型論壇都選擇了MYSQL數(shù)據(jù)庫(kù)作為儲(chǔ)存機(jī)制,大概大部分都是想:"因?yàn)镈Z用了MYSQL,所以就是MYSQL".
其實(shí)不然,試想DZ為什么會(huì)在那么多論壇程式并存的日子生存下來(lái)并笑傲江湖,非常大原因是因?yàn)镈Z用了MYSQL.試想如果大C當(dāng)年改的程式是個(gè)文本論壇,那還會(huì)有DZ的今天嗎?
或從另一個(gè)角度問(wèn),為什么那么多大型網(wǎng)站都選擇了MYSQL而不是文本作為儲(chǔ)存機(jī)制?
所謂文本論壇,實(shí)際就跟真靜態(tài)的說(shuō)法差不多了,將數(shù)據(jù)儲(chǔ)存在空間上面,大量讀寫(xiě)硬盤(pán),等等...
為什么這種寫(xiě)法會(huì)被淘汰呢?
我相信答案不會(huì)是老師所說(shuō)的:
"discuz.net 目前有 2129867 篇帖子,存儲(chǔ)成html的話大約是 20799 M,也就是 20G左右。這當(dāng)中還不計(jì)算由于磁盤(pán)存儲(chǔ)機(jī)制造成的空間浪費(fèi)(100個(gè)1k 的文件占用的空間可能會(huì)是200K)。"
這種說(shuō)法從我個(gè)人觀點(diǎn)來(lái)看,這個(gè)理由不能給予用戶不使用真靜態(tài)充分的理由.
然而,另一個(gè)理由卻是值得我們注意思考的,也是為什么絕大多數(shù)站都不選擇生成靜態(tài):
"刪除、更新這些html內(nèi)容會(huì)導(dǎo)致大量的磁盤(pán)io操作及大量的磁盤(pán)碎片."
正如上面這個(gè)說(shuō)法,在實(shí)際當(dāng)中確實(shí)會(huì)導(dǎo)致大量的磁盤(pán)I/O操作(input,output),大量進(jìn)行I/O操作帶來(lái)的后果可想而知,會(huì)產(chǎn)生大量的磁盤(pán)碎片甚至?xí)?dǎo)致硬盤(pán)出現(xiàn)壞道.
所以對(duì)于生成靜態(tài)而言,還不如去用文本論壇,能更好的解決你們的需求.
(副W就是做文本論壇出生的,當(dāng)時(shí)的名字為ofstar http://www.sh012.com ,后因發(fā)展困難轉(zhuǎn)為MYSQL,而PW生成靜態(tài)頁(yè)面也就是PW以前文本方式稍加改進(jìn)用于吸引用戶眼球的噘頭)
當(dāng)然,如果大家記憶力好的話,應(yīng)該能記得PW4的時(shí)候PW論壇不能訪問(wèn)非常長(zhǎng)一段時(shí)間,后來(lái)恢復(fù)到一段時(shí)間前的數(shù)據(jù),官方的說(shuō)法是被人攻擊而導(dǎo)致硬盤(pán)損壞,其實(shí)這種說(shuō)法是比較不可信的,相對(duì)于是被攻擊導(dǎo)致硬盤(pán)損壞還是大量I/O操作而產(chǎn)生的后果,我個(gè)人更傾向于后者.
當(dāng)然,如果大家比較關(guān)注5d6d的話,應(yīng)該知道前幾天有一天時(shí)間5d6d無(wú)法訪問(wèn),根據(jù)非官方消息是因?yàn)橛脖P(pán)壞了,而損壞的原因我想當(dāng)然是因?yàn)榇罅坑脩舸罅窟M(jìn)行I/O操作了,試想,我們一個(gè)論壇,進(jìn)行磁盤(pán)I/O操作的僅為管理員進(jìn)行更新緩存時(shí)進(jìn)行的,而5d6d每一個(gè)會(huì)員就是個(gè)管理員,試想下對(duì)磁盤(pán)是多大的考驗(yàn)?所以我并不奇怪5d6d的硬盤(pán)壞了.
當(dāng)然,也許在讀這篇文章的非常多朋友都有使用過(guò)BT,也聽(tīng)說(shuō)過(guò)BT對(duì)硬盤(pán)非常傷,不能開(kāi)多,而所謂傷害,和這里指的都是同相同東西,大量I/O導(dǎo)致磁盤(pán)出現(xiàn)碎片甚至出現(xiàn)磁盤(pán)壞道.
這里都是說(shuō)些非常實(shí)際的例子來(lái)說(shuō)明問(wèn)題了.
3.關(guān)于偽靜態(tài)的壞處
當(dāng)然猶如一篇文章的作者所說(shuō)的
"如果流量稍大一些使用偽靜態(tài)就出現(xiàn)CPU使用超負(fù)荷,我的同時(shí)在線300多人就掛了,而不使用偽靜態(tài)的時(shí)候同時(shí)在線超500人都不掛,我的ISS數(shù)是1000"
確實(shí)是這樣的,由于偽靜態(tài)是用正則判斷而不是真實(shí)地址,分辨到底顯示哪個(gè)頁(yè)面的責(zé)任也由直接指定轉(zhuǎn)由CPU來(lái)判斷了,所以CPU占有量的上升,確實(shí)是偽靜態(tài)最大的弊病.
4.我們?cè)撛趺醋?/STRONG>
我們來(lái)總結(jié)一下.
1.使用真靜態(tài)和假靜態(tài)對(duì)SEO來(lái)說(shuō)沒(méi)有什么差別
2.使用真靜態(tài)可能將導(dǎo)致硬盤(pán)損壞并將影響論壇性能
3.使用偽靜態(tài)將占用一定量的CPU占有率,大量使用將導(dǎo)致CPU超負(fù)荷
4.最重要的一點(diǎn),我們要靜態(tài)是為了SEO
所以.
1.使用真靜態(tài)的方法能直接排除了,因?yàn)闊o(wú)論怎么生成,對(duì)硬盤(pán)來(lái)說(shuō)都是非常傷的.
2.既然真?zhèn)戊o態(tài)的效果相同,我們就能選擇偽靜態(tài)了.
3.不過(guò)偽靜態(tài)大量使用會(huì)照成CPU超負(fù)荷.
4.所以我們只要不大量使用就能了.
5.既然靜態(tài)只是給SEO看的,我們只需要偽靜態(tài)給SEO就行了,不必給用戶使用.
6.所以我們只要在專門提供給SEO爬的Archiver中使用偽靜態(tài)就能了.
5.判斷某網(wǎng)站是真靜態(tài)還是偽靜態(tài)
IE瀏覽器
打開(kāi)你想判斷的網(wǎng)站后,再在網(wǎng)址框中輸入javascript:alert(document.lastModified)。此方法可以判斷一個(gè)網(wǎng)頁(yè)的最后更新時(shí)間。如果這個(gè)時(shí)間與現(xiàn)在的時(shí)間相同,說(shuō)明是偽靜態(tài)的,反之為真靜態(tài)的。
火狐Firefox瀏覽器
先用火狐打開(kāi)一個(gè)網(wǎng)頁(yè),等網(wǎng)頁(yè)完全打開(kāi)后進(jìn)入FireFox的控制臺(tái),"工具"-“錯(cuò)誤控制臺(tái)”-快捷鍵:Shift+Ctrl+J,然后在控制臺(tái)里面輸入入:alert(document.lastModified),查看最后修改時(shí)間并記錄。
接下來(lái)關(guān)閉控制臺(tái),重新刷新網(wǎng)頁(yè),再用相同的方法在控制臺(tái)里輸入查詢代碼,再查看文件的最后修改時(shí)間,連續(xù)幾次如果發(fā)現(xiàn)時(shí)間不同則可以判斷它是偽靜態(tài)的了