靜態網站
靜態網站
靜態網站是指全部由HTML(標準通用標記語言的子集)代碼格式頁面組成的網站,所有的內容包含在網頁文件中。網頁上也可以出現各種視覺動態效果,如GIF動畫、FLASH動畫、滾動字幕等,而網站主要是靜態化的頁面和代碼組成,一般文件名均以htm、html、shtml等為後綴。
·每個靜態網頁都有一個固定的網址,文件名均以htm、html、shtml等為後綴;
·靜態網頁一經發布到伺服器上,無論是否被訪問,都是一個獨立存在的文件;
·靜態網頁的內容相對穩定,不含特殊代碼,因此容易被搜索引擎檢索;html更加適合SEO搜索引擎優化。
·靜態網站沒有資料庫的支持,在網站製作和維護方面工作量較大;
·由於不需通過資料庫工作,所以靜態網頁的訪問速度比較快;
現在流行的cms都支持靜態化網頁,這有利於被搜索引擎收錄和提高訪問速度,但需要佔用較大的伺服器空間,程序在生成html的時候非常消耗伺服器資源,建議在伺服器空閑的時候進行此類操作。什麼是靜態網頁和動態網頁?
靜態網頁,動態網頁主要根據網頁製作的語言來區分:
靜態網頁使用語言:HTML(超文本標記語言)
動態網頁使用語言:HTML+ASP或HTML+PHP或HTML+JSP等
還可以從url上區分:
靜態網頁使用url:都以html為結尾
動態網頁使用url:動態的url中基本帶有“?”號
程序是否在伺服器端運行,是重要標誌。在伺服器端運行的程序、網頁、組件,屬於動態網頁,它們會隨不同客戶、不同時間,返回不同的網頁,例如ASP、PHP、JSP、 CGI等。運行於客戶端的程序、網頁、插件、組件,屬於靜態網頁,例如html頁、Flash、JavaScript、VBScript等等,它們是永遠不變的。
靜態網頁和動態網頁各有特點,網站採用動態網頁還是靜態網頁主要取決於網站的功能需求和網站內容的多少,如果網站功能比較簡單,內容更新量不是很大,採用純靜態網頁的方式會更簡單,反之一般要採用動態網頁技術來實現。
靜態網頁是網站建設的基礎,靜態網頁和動態網頁之間也並不矛盾,為了網站適應搜索引擎檢索的需要,即使採用動態網站技術,也可以將網頁內容轉化為靜態網頁發布。
動態網站也可以採用靜動結合的原則,適合採用動態網頁的地方用動態網頁,如果必要使用靜態網頁,則可以考慮用靜態網頁的方法來實現,在同一個網站上,動態網頁內容和靜態網頁內容同時存在也是很常見的事情。
我們將動態網頁的一般特點簡要歸納如下:
(2)採用動態網頁技術的網站可以實現更多的功能,如用戶註冊、用戶登錄、在線調查、用戶管理、訂單管理等等;
(3)動態網頁實際上並不是獨立存在於伺服器上的網頁文件,只有當用戶請求時伺服器才返回一個完整的網頁;
(4)動態網頁中的“?”搜索引擎一般不可能從一個網站的資料庫中訪問全部網頁,或者出於技術方面的考慮,搜索蜘蛛不去抓取網址中“?”後面的內容,因此採用動態網頁的網站在進行搜索引擎推廣時需要做一定的技術處理才能適應搜索引擎的要求。
另外,如果擴展名為.asp但卻沒有連資料庫,完全是靜態的頁面,那也是靜態網站.asp只是擴展名。
(5)靜態網站因為沒有和資料庫連接,所以要有動態網站的效果就必須製作大量的網頁,其中許多網頁只能是虛假網頁,根本實現不了動態網站的功能。
在網站設計中,純粹HTML(標準通用標記語言的子集)格式的網頁通常被稱為“靜態網頁”,早期的網站一般都是由靜態網頁製作的。
靜態網頁的網址形式通常為:
也就是以.htm、.html、.shtml、.xml等為後後綴的。在HTML格式的網頁上,也可以出現各種動態的效果,如.GIF格式的動畫、FLASH、滾動字母等,這些“動態效果”只是視覺上的,與下面將要介紹的動態網頁是不同的概念。
我們將靜態網頁的特點簡要歸納如下:
(1)靜態網頁每個網頁都有一個固定的URL,且網 頁URL以.htm、.html、.shtml等常見形式為後綴,而不含“?”;
(2)網頁內容一經發布到網站伺服器上,無論是否有用戶訪問,每個靜態網頁都是保存在網站伺服器上的,每個網頁都是一個獨立的文件;
(3)靜態網頁的內容相對穩定,因此容易被搜索引擎檢索;
(4)靜態網頁沒有資料庫的支持,網站信息量很大時,完全依靠靜態網頁製作方式在網站製作和維護方面工作量較大,比較困難;
(5)靜態網頁的交互性較差,在功能方面有較大的限制。
由於動態網頁靜態化的技術,一般網頁前台的文件都是以htm、htm、shtml結尾。此類網站有後台,有資料庫,前台頁面與資料庫沒有任何交互的行為,此類網站與靜態網站無異。可以視為靜態網站。
有些用戶覺得,偽靜態和真靜態實際被收錄量會相差很大,其實不然,從你個人角度,你去判斷一下一個帖子到底是真靜態還是偽靜態?
估計很難看得出,因為所謂靜態的意思,就是地址中不帶問號,不帶問號的就是靜態,管他是真的還是偽的?搜索引擎看得出嗎?
所以說,其實不論是真的還是偽的,其實對於搜索引擎來說都是一樣的,搜索引擎沒有說,你這個是偽的,我不收錄你。
揪根掘底的來說,為什麼搜索引擎會不收錄帶問號的網址?因為搜索引擎怕由於問號而進入死循環(以前動網就有這樣一個漏洞,蜘蛛進去出不來了),所以很多時候帶問號的地址是不會進去的,偽靜態對於搜索引擎來說,其實就是靜態,因為地址中沒有帶問號,所以沒有真靜態比偽靜態收錄得多的說法。
有很多用戶說:
真靜態不好嗎?
為什麼不用真靜態?
訪問起來不是更快嗎?
負載不是更好嗎?
等等等等...
在這裡,其實只用一個問題來回答:為什麼選擇MYSQL。
很多用戶大概不明白為什麼那麼多大型論壇都選擇了MYSQL資料庫作為儲存機制,大概大部分都是想:"因為DZ用了MYSQL,所以就是MYSQL"。
其實不然,試想DZ為什麼會在那麼多論壇程序並存的日子生存下來並笑傲江湖,很大原因是因為DZ用了MYSQL。試想如果大C當年改的程序是一個文本論壇,那還會有DZ的今天嗎?
或者從另一個角度問,為什麼那麼多大型網站都選擇了MYSQL而不是文本作為儲存機制?
所謂文本論壇,實際就跟真靜態的說法差不多了,將數據儲存在空間上面,大量讀寫硬碟,等等...
我相信答案不會是老師所說的:
" 目前有2129867篇帖子,存儲成html的話大約是20799 M,也就是20G左右。這當中還不計算由於磁碟存儲機製造成的空間浪費(100個1k 的文件佔用的空間可能會是200K)。"
這種說法從我個人觀點來看,這個理由不能給予用戶不使用真靜態充分的理由。
然而,另一個理由卻是值得我們注意思考的,也是為什麼絕大多數站都不選擇生成靜態:
"刪除、更新這些html內容會導致大量的磁碟io操作以及大量的磁碟碎片。"
正如上面這個說法,在實際當中確實會導致大量的磁碟I/O操作(input,output),大量進行I/O操作帶來的後果可想而知,會產生大量的磁碟碎片甚至會導致硬碟出現壞道。
所以對於生成靜態而言,還不如去用文本論壇,可以更好的解決你們的需求。
當然,如果大家記憶力好的話,應該可以記得PW4的時候PW論壇不能訪問很長一段時間,後來恢復到一段時間前的數據,官方的說法是被人攻擊而導致硬碟損壞,其實這種說法是比較不可信的,相對於是被攻擊導致硬碟損壞還是大量I/O操作而產生的後果,我個人更傾向於後者。
當然,如果大家比較關注5d6d的話,應該知道前幾天有一天時間5d6d無法訪問,根據非官方消息是因為硬碟壞了,而損壞的原因我想當然是因為大量用戶大量進行I/O操作了,試想,我們一個論壇,進行磁碟I/O操作的僅為管理員進行更新緩存時進行的,而5d6d每一個會員就是一個管理員,試想下對磁碟是多大的考驗?所以我並不奇怪5d6d的硬碟壞了。
當然,也許在讀這篇文章的很多朋友都有使用過BT,也聽說過BT對硬碟很傷,不能開多,而所謂傷害,和這裡指的都是同一樣東西,大量I/O導致磁碟出現碎片甚至出現磁碟壞道。
這裡都是說些很實際的例子來說明問題了。
當然猶如一篇文章的作者所說的
"如果流量稍大一些使用偽靜態就出現CPU使用超負荷,我的同時在線300多人就掛了,而不使用偽靜態的時候同時在線超500人都不掛,我的ISS數是1000"
確實是這樣的,由於偽靜態是用正則判斷而不是真實地址,分辨到底顯示哪個頁面的責任也由直接指定轉由CPU來判斷了,所以CPU佔有量的上升,確實是偽靜態最大的弊病。
1.使用真靜態和假靜態對SEO來說沒有什麼區別
2.使用真靜態可能將導致硬碟損壞並將影響論壇性能
3.使用偽靜態將佔用一定量的CPU佔有率,大量使用將導致CPU超負荷
相關區別
一、靜態網站
1、靜態網頁每個網頁都有一個固定的URL,且網頁URL以.htm、.html、.shtml等常見形式為後綴,而不含有“?”;
2、靜態網頁的內容相對穩定,因此容易被搜索引擎檢索;
3、靜態網頁沒有資料庫的支持,在網站製作和維護方面工作量較大,因此當網站信息量很大時完全依靠靜態網頁製作方式比較困難;
4、靜態網頁的交互性交叉,在功能方面有較大的限制。
二、動態網站
1、交互性:即網頁會根據用戶的要求和選擇而動態改變和響應。例如訪問者在網頁填寫表單信息並提交,伺服器經過處理將信息自動存儲到後台資料庫中,並打開相應提示頁面。
2、自動更新:即無需手動操作,便會自動生成新的頁面,可以大大節省工作量。例如,在論壇中發布信息,後台伺服器將自動生成新的網頁。
3、隨機性:即當不同的時間、不同的人訪問同一網址時會產生不同的頁面效果。例如,登錄界面自動循環功能。
使用真靜態的方法可以直接排除了,因為無論怎麼生成,對硬碟來說都是很傷的.
既然真偽靜態的效果一樣,我們就可以選擇偽靜態了.
但是偽靜態大量使用會造成CPU超負荷.
所以我們只要不大量使用就可以了.
既然靜態只是給SEO看的,我們只需要偽靜態給SEO就行了,不需要給用戶使用.
所以我們只要在專門提供給SEO爬的Archiver中使用偽靜態就可以了.