web結構

志博發表於2016-04-14

  在網上查的資料:完整的Web結構應包括:HTTP協議;Web伺服器;通用閘道器介面CGI;Netscape應用程式設計介面;Web瀏覽器。下面簡述一下web五大結構:

  1、超文字傳輸協議(HTTP)

  HTTP是一個屬於應用層的物件導向的協議,由於其簡捷、快速的方式,適用於分散式超媒體資訊系統。它於1990年提出,經過幾年的使用與發展,得到不斷地完善和擴充套件。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的規範化工作正在進行之中,而且HTTP-NG(Next Generation of HTTP)的建議已經提出。
HTTP協議的主要特點可概括如下:
1.支援客戶/伺服器模式。
2.簡單快速:客戶向伺服器請求服務時,只需傳送請求方法和路徑。請求方法常用的有GET、HEAD、POST。每種方法規定了客戶與伺服器聯絡的型別不同。由於HTTP協議簡單,使得HTTP伺服器的程式規模小,因而通訊速度很快。
3.靈活:HTTP允許傳輸任意型別的資料物件。正在傳輸的型別由Content-Type加以標記。
4.無連線:無連線的含義是限制每次連線只處理一個請求。伺服器處理完客戶的請求,並收到客戶的應答後,即斷開連線。採用這種方式可以節省傳輸時間。
5.無狀態:HTTP協議是無狀態協議。無狀態是指協議對於事務處理沒有記憶能力。缺少狀態意味著如果後續處理需要前面的資訊,則它必須重傳,這樣可能導致每次連線傳送的資料量增大。另一方面,在伺服器不需要先前資訊時它的應答就較快。 

 2、Web伺服器

  Web伺服器是指駐留於因特網上某種型別計算機的程式。當Web瀏覽器(客戶端)連到伺服器上並請求檔案時,伺服器將處理該請求並將檔案傳送到該瀏覽器上,附帶的資訊會告訴瀏覽器如何檢視該檔案(即檔案型別)。伺服器使用HTTP(超文字傳輸協議)進行資訊交流,這就是人們常把它們稱為HTTPD伺服器的原因。
  Web伺服器不僅能夠儲存資訊,還能在使用者通過Web瀏覽器提供的資訊的基礎上執行指令碼和程式。

3、基於通用閘道器介面CGI

  通用閘道器介面(Common Gateway Interface/CGI) 是一種重要的網際網路技術,可以讓一個客戶端,從網頁瀏覽器向執行在Web伺服器上的程式,請求資料。CGI描述了客戶端和這個程式之間傳 輸資料的一種標準。

  程式語言 Perl 是一個廣泛被用途為 CGI 的一個語言,但CGI的一個目的是要獨立於任何語言的。Web伺服器無須在這個問題上對語言有任何瞭解。 事實上,CGI程式可以用任何指令碼語言 或者是完全獨立程式語言實現,只要這個語言可以在這個系統上執行。除Perl外,像Unix shell scripts, Python, Ruby, PHP, Tcl, C/C++, 和Visual Basic都可以用來寫CGI。

  CGI的工作方式,從Web伺服器的角度看,是在特定的位置(比如,http://www.example.com/wiki.cgi)定義了可以 執行CGI程式。當收到一個匹配URL的請求,相應的程式就會被呼叫,並將客戶端傳送的資料作為輸入。程式的輸出會由Web伺服器收 集,並加上合適的頭,再傳送回客戶端。

4、基於伺服器擴充套件的API(應用程式設計介面)

  應用程式介面(API:application programming interface)是一組定義、程式及協議的集合,通過 API 介面實現計算機軟體之間的相互通訊。API 的一個主要功能是提供通用功能集。程式設計師通過使用 API 函式開發應用程式,從而可以避免編寫無用程式,以減輕程式設計任務。
API 同時也是一種中介軟體,為各種不同平臺提供資料共享。根據單個或分散式平臺上不同軟體應用程式間的資料共享效能,可以將 API 分為四種型別: 

一.遠端過程呼叫(RPC):通過作用在共享資料快取器上的過程(或任務)實現程式間的通訊。
二.標準查詢語言(SQL):是標準的訪問資料的查詢語言,通過通用資料庫實現應用程式間的資料共享。
三.檔案傳輸:檔案傳輸通過傳送格式化檔案實現應用程式間資料共享。
四.資訊交付:指鬆耦合或緊耦合應用程式間的小型格式化資訊,通過程式間的直接通訊實現資料共享。

5、Web瀏覽器

網頁瀏覽器主要通過HTTP協議連線網頁伺服器而取得網頁,HTTP容許網頁瀏覽器送交資料到網頁伺服器並且獲取網頁。目前最常用的HTTP是HTTP/1.1,這個協議在RFC2616中被完整定義。HTTP/1.1 有其一套Internet Explorer並不完全支援的標準,然而許多其他當代的網頁瀏覽器則完全支援這些標準。
網頁的位置以URL(統一資源定位符)指示,此乃網頁的地址;以http:開首的便是通過HTTP協議登陸。很多瀏覽器同時支援其他型別的URL及協議,例如ftp:是FTP(檔案傳送協議)、gopher:是Gopher及https:是HTTPS(以SSL加密的HTTP)。
網頁通常使用超文字標記語言(標準通用標記語言下的一個應用)檔案格式,並在HTTP協議內以MIME內容形式來定義。大部分瀏覽器均支援許多HTML以外的檔案格式,例如JPEG、PNG和GIF影象格式,還可以利用外掛程式來支援更多檔案型別。在HTTP內容型別和URL協議結合下,網頁設計者便可以把影象、動畫、視訊、聲音和流媒體包含在網頁中,或讓人們透過網頁而取得它們。
早期的網頁瀏覽器只支援簡易版本的HTML。專屬軟體的瀏覽器的迅速發展導致非標準的HTML程式碼的產生。這導致了瀏覽器的相容性的問題。現代的瀏覽器(Mozilla、Opera和Safari)支援標準的HTML和XHTML(從HTML 4.01版本開始)。他們顯示出來的網頁效果都一樣。Internet Explorer仍未完全支援HTML 4.01及XHTML 1.x。現在許多網站都是使用所見即所得的HTML編輯軟體來建構的,這些軟體包括Macromedia Dreamweaver和Microsoft Frontpage等。他們通常預設產生非標準HTML;這阻礙了W3C制定統一標準,尤其是XHTML和CSS(層疊樣式表,設計網頁時用)。
有一些瀏覽器還載入了一些附加元件來Usenet新聞組、IRC(網際網路中繼聊天)和電子郵件。支援的協議包括NNTP(網路新聞傳輸協議)、SMTP(簡單郵件傳輸協議)、IMAP(互動郵件訪問協議)和POP(郵局協議)。

相關文章