WEB服務器

WEB服務器

網站服務器
Web服務器一般指網站服務器,是指駐留于因特網上某種類型計算機的程序,可以處理浏覽器等Web客戶端的請求并返回相應響應,也可以放置網站文件,讓全世界浏覽;可以放置數據文件,讓全世界下載[1]。最主流的三個Web服務器是Apache、 Nginx 、IIS。WEB服務器也稱為WWW(WORLD WIDE WEB)服務器,主要功能是提供網上信息浏覽服務。 WWW 是 Internet 的多媒體信息查詢工具,是 Internet 上近年才發展起來的服務,也是發展最快和目前用的最廣泛的服務。正是因為有了WWW工具,才使得近年來 Internet 迅速發展,且用戶數量飛速增長。
  • 中文名:WEB服務器
  • 外文名:Web Server
  • 别名:
  • 其他名字:WWW(WORLD WIDE WEB)服務器

詞義辨析

什麼是網絡服務器?

網絡服務器是網絡環境下為客戶提供某種服務的專用計算機。

WEB簡介

WEB服務器也稱為WWW(WORLD WIDE WEB)服務器,主要功能是提供網上信息浏覽服務。 WWW 是 Internet 的多媒體信息查詢工具,是 Internet 上近年才發展起來的服務,也是發展最快和目前用的最廣泛的服務。正是因為有了WWW工具,才使得近年來 Internet 迅速發展,且用戶數量飛速增長。

Web服務器是可以向發出請求的浏覽器提供文檔的程序。

1、服務器是一種被動程序:隻有當Internet上運行其他計算機中的浏覽器發出的請求時,服務器才會響應。

2 、最常用的Web服務器是Apache、Nginx和Microsoft的Internet信息服務器(Internet Information Services,IIS)。

3、Internet上的服務器也稱為Web服務器,是一台在Internet上具有獨立IP地址的計算機,可以向Internet上的客戶機提供WWW、Email和FTP等各種Internet服務。

4、Web服務器是指駐留于因特網上某種類型計算機的程序。當Web浏覽器(客戶端)連到服務器上并請求文件時,服務器将處理該請求并将文件反饋到該浏覽器上,附帶的信息會告訴浏覽器如何查看該文件(即文件類型)。服務器使用HTTP(超文本傳輸協議)與客戶機浏覽器進行信息交流,這就是人們常把它們稱為HTTP服務器的原因。

Web服務器不僅能夠存儲信息,還能在用戶通過Web浏覽器提供的信息的基礎上運行腳本和程序。

協議

應用層使用HTTP協議。

HTML(标準通用标記語言下的一個應用)文檔格式。

浏覽器統一資源定位器(URL)。

為了解決HTTP協議的這一缺陷,需要使用另一種協議:安全套接字層超文本傳輸協議HTTPS。為了數據傳輸的安全,HTTPS在HTTP的基礎上加入了SSL協議,SSL依靠證書來驗證服務器的身份,并為浏覽器和服務器之間的通信加密。

WWW簡介

WWW是 World Wide Web (環球信息網)的縮寫,也可以簡稱為 Web,中文名字為“萬維網”。它起源于1989年3月,由歐洲量子物理實驗室CERN(the European Laboratory for Particle Physics)所發展出來的主從結構分布式超媒體系統。通過萬維網,人們隻要通過使用簡單的方法,就可以很迅速方便地取得豐富的信息資料。由于用戶在通過 Web浏覽器訪問信息資源的過程中,無需再關心一些技術性的細節,而且界面非常友好,因而 Web 在Internet 上一推出就受到了熱烈的歡迎,走紅全球,并迅速得到了爆炸性的發展。

發展和特點

長期以來,人們隻是通過傳統的媒體(如電視、報紙、雜志和廣播等)獲得信息。但随着計算機網絡的發展,人們想要獲取信息,已不再滿足于傳統媒體那種單方面傳輸和獲取的方式,而希望有一種主觀的選擇性。網絡上提供各種類别的數據庫系統,如文獻期刊、産業信息、氣象信息、論文檢索等等。由于計算機網絡的發展,信息的獲取變得非常及時、迅速和便捷。

到了1993年,WWW 的技術有了突破性的進展,它解決了遠程信息服務中的文字顯示、數據連接以及圖像傳遞的問題,使得 WWW 成為 Internet 上最為流行的信息傳播方式。Web 服務器成為 Internet 上最大的計算機群,Web 文檔之多、鍊接的網絡之廣,令人難以想象。可以說,Web 為 Internet 的普及邁出了開創性的一步,是近年來 Internet 上取得的最激動人心的成就。

WWW 采用的是浏覽器/服務器結構,其作用是整理和儲存各種WWW資源,并響應客戶端軟件的請求,把客戶所需的資源傳送到 Windows 95(或Windows98)、Windows NT、UNⅨ 或 Linux 等平台上。

使用最多的 web server服務器軟件有兩個:微軟的信息服務器(iis),和Apache。

通俗的講,Web服務器傳送(serves)頁面使浏覽器可以浏覽,然而應用程序服務器提供的是客戶端應用程序可以調用(call)的方法(methods)。确切一點,你可以說:Web服務器專門處理HTTP請求(request),但是應用程序服務器是通過很多協議來為應用程序提供(serves)商業邏輯(business logic)。

Web服務器可以解析(handles)HTTP協議。當Web服務器接收到一個HTTP請求(request),會返回一個HTTP響應(response),例如送回一個HTML頁面。為了處理一個請求(request),Web服務器可以響應(response)一個靜态頁面或圖片,進行頁面跳轉(redirect),或者把動态響應(dynamic response)的産生委托(delegate)給一些其它的程序例如CGI腳本,JSP(JavaServer Pages)腳本,servlets,ASP(Active Server Pages)腳本,服務器端(server-side)JavaScript,或者一些其它的服務器端(server-side)技術。無論它們(譯者注:腳本)的目的如何,這些服務器端(server-side)的程序通常産生一個HTML的響應(response)來讓浏覽器可以浏覽。

要知道,Web服務器的代理模型(delegation model)非常簡單。當一個請求(request)被送到Web服務器裡來時,它隻單純的把請求(request)傳遞給可以很好的處理請求(request)的程序(譯者注:服務器端腳本)。Web服務器僅僅提供一個可以執行服務器端(server-side)程序和返回(程序所産生的)響應(response)的環境,而不會超出職能範圍。服務器端(server-side)程序通常具有事務處理(transaction processing),數據庫連接(database connectivity)和消息(messaging)等功能。

雖然Web服務器不支持事務處理或數據庫連接池,但它可以配置(employ)各種策略(strategies)來實現容錯性(fault tolerance)和可擴展性(scalability),例如負載平衡(load balancing),緩沖(caching)。集群特征(clustering—features)經常被誤認為僅僅是應用程序服務器專有的特征。

應用程序服務器(The Application Server)

根據我們的定義,作為應用程序服務器,它通過各種協議,可以包括HTTP,把商業邏輯暴露給(expose)客戶端應用程序。Web服務器主要是處理向浏覽器發送HTML以供浏覽,而應用程序服務器提供訪問商業邏輯的途徑以供客戶端應用程序使用。應用程序使用此商業邏輯就象你調用對象的一個方法(或過程語言中的一個函數)一樣。

應用程序服務器的客戶端(包含有圖形用戶界面(GUI)的)可能會運行在一台PC、一個Web服務器或者甚至是其它的應用程序服務器上。在應用程序服務器與其客戶端之間來回穿梭(traveling)的信息不僅僅局限于簡單的顯示标記。相反,這種信息就是程序邏輯(program logic)。正是由于這種邏輯取得了(takes)數據和方法調用(calls)的形式而不是靜态HTML,所以客戶端才可以随心所欲的使用這種被暴露的商業邏輯。

在大多數情形下,應用程序服務器是通過組件(component)的應用程序接口(API)把商業邏輯暴露(expose)(給客戶端應用程序)的,例如基于J2EE(Java 2 Platform,Enterprise Edition)應用程序服務器的EJB(Enterprise JavaBean)組件模型。此外,應用程序服務器可以管理自己的資源,例如看大門的工作(gate-keeping duties)包括安全(security),事務處理(transaction processing),資源池(resource pooling), 和消息(messaging)。就象Web服務器一樣,應用程序服務器配置了多種可擴展(scalability)和容錯(fault tolerance)技術。

例如,設想一個在線商店(網站)提供實時定價(real-time pricing)和有效性(availability)信息。這個站點(site)很可能會提供一個表單(form)讓你來選擇産品。當你提交查詢(query)後,網站會進行查找(lookup)并把結果内嵌在HTML頁面中返回。網站可以有很多種方式來實現這種功能。我要介紹一個不使用應用程序服務器的情景和一個使用應用程序服務器的情景。觀察一下這兩中情景的不同會有助于你了解應用程序服務器的功能。

情景1:不帶應用程序服務器的Web服務器

在此種情景下,一個Web服務器獨立提供在線商店的功能。Web服務器獲得你的請求(request),然後發送給服務器端(server-side)可以處理請求(request)的程序。此程序從數據庫或文本文件(flat file,譯者注:flat file是指沒有特殊格式的非二進制的文件,如properties和XML文件等)中查找定價信息。一旦找到,服務器端(server-side)程序把結果信息表示成(formulate)HTML形式,最後Web服務器把會它發送到你的Web浏覽器。

簡而言之,Web服務器隻是簡單的通過響應(response)HTML頁面來處理HTTP請求(request)。

情景2:帶應用程序服務器的Web服務器

情景2和情景1相同的是Web服務器還是把響應(response)的産生委托(delegates)給腳本(譯者注:服務器端(server-side)程序)。然而,你可以把查找定價的商業邏輯(business logic)放到應用程序服務器上。由于這種變化,此腳本隻是簡單的調用應用程序服務器的查找服務(lookup service),而不是已經知道如何查找數據然後表示為(formulate)一個響應(response)。這時當該腳本程序産生HTML響應(response)時就可以使用該服務的返回結果了。

在此情景中,應用程序服務器提供(serves)了用于查詢産品的定價信息的商業邏輯。(服務器的)這種功能(functionality)沒有指出有關顯示和客戶端如何使用此信息的細節,相反客戶端和應用程序服務器隻是來回傳送數據。當有客戶端調用應用程序服務器的查找服務(lookup service)時,此服務隻是簡單的查找并返回結果給客戶端。

通過從響應産生(response-generating)HTML的代碼中分離出來,在應用程序之中該定價(查找)邏輯的可重用性更強了。其他的客戶端,例如收款機,也可以調用同樣的服務(service)來作為一個店員給客戶結帳。相反,在情景1中的定價查找服務是不可重用的因為信息内嵌在HTML頁中了。

總而言之,在情景2的模型中,在Web服務器通過回應HTML頁面來處理HTTP請求(request),而應用程序服務器則是通過處理定價和有效性(availability)請求(request)來提供應用程序邏輯的。

警告(Caveats)

XML Web Services已經使應用程序服務器和Web服務器的界線混淆了。通過傳送一個XML有效載荷(payload)給服務器,Web服務器現在可以處理數據和響應(response)的能力與以前的應用程序服務器同樣多了。

另外,大多數應用程序服務器也包含了Web服務器,這就意味着可以把Web服務器當作是應用程序服務器的一個子集(subset)。雖然應用程序服務器包含了Web服務器的功能,但是開發者很少把應用程序服務器部署(deploy)成這種功能(capacity)(譯者注:這種功能是指既有應用程序服務器的功能又有Web服務器的功能)。相反,如果需要,他們通常會把Web服務器獨立配置,和應用程序服務器一前一後。這種功能的分離有助于提高性能(簡單的Web請求(request)就不會影響應用程序服務器了),分開配置(專門的Web服務器,集群(clustering)等等),而且給最佳産品的選取留有餘地。

服務器特點

Windows,Linux與Unix這3個操作系統是架設Web服務器比較常見的操作系統。Linux的安全性能在這3個操作系統中最高,可以支持多個硬件平台,其網絡功能比較強大。總的來說,這兩大優點是其他操作系統不可替代的:第一,可以依據用戶不同的需求來随意修改、調整與複制各種程序的源碼以及發布在互聯網上;第二,Linux操作系統的市場價格比較便宜,也能夠在互聯網上免費下載源碼。可以說,Linux為架設既高效又安全的Web服務器的比較理想的操作系統。此外,要讓Web服務器更具有優越的性能,可以根據服務器系統之特點與用途作進一步的優化與處理,盡量減少Web服務器的數據傳輸量以及降低其數據傳輸的頻率,進而促進網絡寬帶的利用率與使用率,以及提高網絡客戶端的網頁加載的速度,同時也可以減少Web服務器各種資源的消耗。

工作原理

Web服務器的工作原理并不複雜,一般可分成如下4個步驟:連接過程、請求過程、應答過程以及關閉連接。下面對這4個步驟作一簡單的介紹。連接過程就是Web服務器和其浏覽器之間所建立起來的一種連接。查看連接過程是否實現,用戶可以找到和打開socket這個虛拟文件,這個文件的建立意味着連接過程這一步驟已經成功建立。請求過程就是Web的浏覽器運用socket這個文件向其服務器而提出各種請求。應答過程就是運用HTTP協議把在請求過程中所提出來的請求傳輸到Web的服務器,進而實施任務處理,然後運用HTTP協議把任務處理的結果傳輸到Web的浏覽器,同時在Web的浏覽器上面展示上述所請求之界面。關閉連接就是當上一個步驟--應答過程完成以後,Web服務器和其浏覽器之間斷開連接之過程。Web服務器上述4個步驟環環相扣、緊密相聯,邏輯性比較強,可以支持多個進程、多個線程以及多個進程與多個線程相混合的技術。

大型

在UNⅨ和LINUX平台下使用最廣泛的免費HTTP服務器是Apache和Nginx服務器,而Windows平台NT/2000/2003使用ⅡS的WEB服務器。在選擇使用WEB服務器應考慮的本身特性因素有:性能、安全性、日志和統計、虛拟主機、代理服務器、緩沖服務和集成應用程序等,下面介紹幾種常用的WEB服務器。

IIS

Microsoft的Web服務器産品為Internet Information Services (IIS),IIS 是允許在公共Intranet或Internet上發布信息的Web服務器。ⅡS是目前最流行的Web服務器産品之一,很多著名的網站都是建立在ⅡS的平台上。IIS提供了一個圖形界面的管理工具,稱為Internet服務管理器,可用于監視配置和控制Internet服務。

IIS是一種Web服務組件,其中包括Web服務器、FTP服務器、NNTP服務器和SMTP服務器,分别用于網頁浏覽、文件傳輸、新聞服務和郵件發送等方面,它使得在網絡(包括互聯網和局域網)上發布信息成了一件很容易的事。它提供ISAPI(Intranet Server API)作為擴展Web服務器功能的編程接口;同時,它還提供一個Internet數據庫連接器,可以實現對數據庫的查詢和更新。

Kangle

kangle web服務器(簡稱:kangle)是一款跨平台、功能強大、安全穩定、易操作的高性能web服務器和反向代理服務器軟件。除此:kangle也是一款專為做虛拟主機研發的web服務器。實現虛拟主機獨立進程、獨立身份運行。用戶之間安全隔離,一個用戶出問題不影響其他用戶。安全支持php、asp、asp·net、java、ruby等多種動态開發語言。

WebSphere

WebSphere Application Server 是一種功能完善、開放的Web應用程序服務器,是IBM電子商務計劃的核心部分,它是基于 Java 的應用環境,用于建立、部署和管理 Internet 和 Intranet Web 應用程序。這一整套産品進行了擴展,以适應 Web應用程序服務器的需要,範圍從簡單到高級直到企業級。

WebSphere 針對以 Web 為中心的開發人員,他們都是在基本 HTTP服務器和CGI編程技術上成長起來的。IBM 将提供 WebSphere 産品系列,通過提供綜合資源、可重複使用的組件、功能強大并易于使用的工具、以及支持 HTTP 和 IIOP 通信的可伸縮運行時環境,來幫助這些用戶從簡單的 Web應用程序轉移到電子商務世界。

WebLogic

BEA WebLogic Server是一種多功能、基于标準的web應用服務器,為企業構建自己的應用提供了堅實的基礎。各種應用開發、部署所有關鍵性的任務,無論是集成各種系統和數據庫,還是提交服務、跨 Internet 協作,起始點都是 BEA WebLogic Server。由于 它具有全面的功能、對開放标準的遵從性、多層架構、支持基于組件的開發,基于 Internet 的企業都選擇它來開發、部署最佳的應用。

BEA WebLogic Server 在使應用服務器成為企業應用架構的基礎方面繼續處于領先地位。BEA WebLogic Server 為構建集成化的企業級應用提供了穩固的基礎,它們以 Internet 的容量和速度,在連網的企業之間共享信息、提交服務,實現協作自動化。

Apache

Apache仍然是世界上用的最多的Web服務器,市場占有率達60%左右。它源于NCSAhttpd服務器,當NCSAWWW服務器項目停止後,那些使用NCSA WWW服務器的人們開始交換用于此服務器的補丁,這也是apache名稱的由來(pache 補丁)。世界上很多著名的網站都是Apache的産物,它的成功之處主要在于它的源代碼開放、有一支開放的開發隊伍、支持跨平台的應用(可以運行在幾乎所有的Unix、Windows、Linux系統平台上)以及它的可移植性等方面。

Tomcat

Tomcat是一個開放源代碼、運行servlet和JSP Web應用軟件的基于Java的Web應用軟件容器。Tomcat Server是根據servlet和JSP規範進行執行的,因此我們就可以說Tomcat Server也實行了Apache-Jakarta規範且比絕大多數商業應用軟件服務器要好。

Tomcat是Java Servlet 2.2和JavaServer Pages 1.1技術的标準實現,是基于Apache許可證下開發的自由軟件。Tomcat是完全重寫的Servlet API 2.2和JSP 1.1兼容的Servlet/JSP容器。Tomcat使用了JServ的一些代碼,特别是Apache服務适配器。随着Catalina Servlet引擎的出現,Tomcat第四版号的性能得到提升,使得它成為一個值得考慮的Servlet/JSP容器,因此許多WEB服務器都是采用Tomcat。

Jboss

是一個基于J2EE的開放源代碼的應用服務器。 JBoss代碼遵循LGPL許可,可以在任何商業應用中免費使用,而不用支付費用。JBoss是一個管理EJB的容器和服務器,支持EJB 1.1、EJB 2.0和EJB3的規範。但JBoss核心服務不包括支持servlet/JSP的WEB容器,一般與Tomcat或Jetty綁定使用。

JBOSS服務器使用詳解

1、把文件解壓到一個不含空格的,非中文目标下,如:jboss

2、加入MyEclipse —> Servers -> JBoss -> JBoss 5.x

(1)、JBoss home directory :選擇JBOSS存放的路徑;如:C:JBOSSjboss-5.1.0

(2)、Server name :default (3個默認的配置:minimial,default和all)

3、Apply -> OK

4、配置環境變量:

(1)、添加:變量名:JBoss_HOME 變量值:C:JBOSSjboss-5.1.0(JBoss的解壓後的目錄)

(2)、把 C:JBOSSjboss-5.1.0bin 變量值加到:path變量中;

(3)、保存

5、運行:C:JBOSSjboss-5.1.0binrun.bat 文件

6、發布web項目

JBOSS服務器目錄結構作用介紹

目錄 描述

------------------------------------------------------------------------------

bin 啟動和關閉JBoss的腳本

client 客戶端與JBoss通信所需的的Java庫(JARs)

docs 配置的樣本文件(數據庫配置等)

doc/dtd 在JBoss中使用的各種XML文件的DTD。

lib 一些JAR,JBoss啟動時加載,且被所有JBoss配置共享。(不要把你的庫放在這裡)

server 各種JBoss配置。每個配置必須放在不同的子目錄。子目錄的名字表示配置的名字。

JBoss包含3個默認的配置:minimial,default和all。

server/all JBoss的完全配置,啟動所有服務,包括集群和IIOP。

server/default JBoss的默認配置。在沒有在JBoss命令航中指定配置名稱時使用。

server/default/conf JBoss的配置文件。

server/default/data JBoss的數據庫文件。比如,嵌入的數據庫,或者JBossMQ。

server/default/deploy JBoss的熱部署目錄。放到這裡的任何文件或目錄會被JBoss自動部署。EJB、WAR、EAR,甚至服務。

server/default/lib 一些JAR,JBoss在啟動特定配置時加載它們。(all和minimial配置也包含這個和下面兩個目錄。)

server/default/log JBoss的日志文件。

server/default/tmp JBoss的臨時文件。

補充

1、JBoss的默認端口是8080

2、對于NT和Win2000系統如果你要安裝NT或Win2000服務的話,可以把JBoss加在系統服務中,避免你每次需要到JBoss目錄下運行run.bat命令,隻是當系統啟動時,自動啟動JBoss服務器。

2003

Web服務器組件是Windows Server2003系統中ⅡS6.0的服務組件之一,默認情況下并沒有被安裝,用戶需要手動安裝Web服務組件。

第1步,打開“控制面闆”窗口,雙擊“添加/删除程序”圖标,打開“添加或删除程序”窗口。單擊“添加/删除Windows組件”按鈕,打開“Windows組件安裝向導”對話框。

第2步,在“Windows組件”對話框中雙擊“應用程序服務器”選項,打開“應用程序服務器”對話框。在“應用程序服務器的子組件”列表中雙擊“Internet 信息服務(ⅡS)”複選框。

第3步,打開“Internet 信息服務(ⅡS)”對話框,在“Internet 信息服務(ⅡS) 的子組件”列表中選中“萬維網服務”複選框。依次單擊“确定”→“确定”按鈕。

第4步,系統開始安裝ⅡS 6.0和Web服務組件。在安裝過程中需要提供Windows Server 2003系統安裝光盤或指定安裝文件路徑。安裝完成後單擊“完成”按鈕即可。

小型

【nginx】

* 支持通用語言接口,如php、python、perl等

* 支持正向和反向代理、虛拟主機、url重寫、壓縮傳輸等

* nginx的模塊都是靜态編譯的,對fcgi的支持非常好,在處理鍊接的的方式上nginx支持epoll。

【 micro_httpd - really small HTTP server】

特點:

* 支持安全的 .. 上級目錄過濾

* 支持通用的MIME類型

* 支持簡單的目錄

* 支持目錄列表

* 支持使用 index.html 作為首頁

* Trailing-slash redirection

*程序總共代碼才200多行

這個httpd适合學習簡單的Web Server編寫學習,因為它隻有一個簡單的框架,隻能夠處理簡單的靜态頁,可以考慮用來放靜态頁。

【 mini_httpd - small HTTP server 】

特點:

* 支持GET、HEAD、POST方法

* 支持CGI功能

* 支持基本的驗證功能

* 支持安全 .. 上級目錄功能

* 支持通用的MIME類型

* 支持目錄列表功能

* 支持使用 index.html,index.htm,index.cgi 作為首頁

* 支持多個根目錄的虛拟主機

* 支持标準日志記錄

* 支持自定義錯誤頁

* Trailing-slash redirection

mini_httpd 也是相對比較适合學習使用,大體實現了一個Web Server的功能,支持靜态頁和CGI,能夠用來放置一些個人簡單的東西,不适宜投入生産使用。

【 thttpd - tiny/turbo/throttling HTTP server 】

thttpd中是一個簡單,小型,輕便,快速和安全的http服務器.

簡單:它能夠支持HTTP/1.1協議标準,或者超過了最低水平

小巧:它具有非常少的運行時間,因為它不fork子進程來接受新請求,并且非常謹慎的分配内存。

便攜:它能夠在大部分的類Unix系統上運行,包括FreeBSD,SunOS 4,Solaris 2,BSD/OS,Linux,OSF等等

快速:它的速度要超過主流的Web服務器(Apache,NCSA,Netscape),在高負載情況下,它要快的多

安全:它努力的保護主機不受到攻擊,不中斷服務器

thttpd 類似于lighttpd,對于并發請求不使用fork()來派生子進程處理,而是采用多路複用(Multiplex)技術來實現。因此效能很好。同時它還有一個特點就是基于URL的文件流量限制,這對于下載的流量控制而言是非常方便的。象Apache就必須使用插件實現,效率較thttpd低。

配置

如何設置默認文檔;在同一台服務器上架設多個Web站點;(可以通過改變端口号)創建Web虛拟目錄;

(1)了解DNS主機名和IP地址。 如果此WEB服務器在Internet上,需向ISP申請和注冊此服務器的DNS主機名和IP地址。如果此服務器隻在企業網内使用,則在内部的DNS服務器上注冊。

(2)打開服務器文檔,選擇"端口"-"Internet端口",啟用"TCP/ IP端口"。

(3)選擇"Internet協議",完成以下選項後,保存文檔。

"綁定主機名":

A、選擇"是"則您可在"主機名"項中輸入主機别名,WEB用戶可用此别名替代Domino服務器名訪問WEB服務器。

B、選擇"否"(缺省)則不允許使用别名。

"DNS查詢": 選擇"是"則Domino服務器查詢發送請求的WEB客戶機的DNS名。

Domino日志文件和數據庫将包含WEB客戶機的DNS主機名。 選擇"否"(缺省)則不查詢,Domino日志文件和

數據庫将隻包含WEB客戶機的IP地址。

注意:選擇"否"将提高Domino服務器性能,因為服務器不使用資源執行DNS查詢。

"允許HTTP客戶浏覽數據庫":選擇"是"則允許WEB用戶在URL中使用OpenServer命令來顯示服務器上數據庫列表。選擇"否"(缺省)則不允許。但即使WEB用戶不能看到服務器上數據庫列表,他們仍能打開有權限訪問的單個數據庫。

(4)啟動HTTP任務。在服務器控制台上,輸入:loap http

安全

設置策略

盜用賬号、緩沖區溢出以及執行任意命令是Web服務器比較常見的安全漏洞。黑客攻擊、蠕蟲病毒以及木馬是因特網比較常見的安全漏洞。口令攻擊、拒絕服務攻擊以及IP欺騙是黑客攻擊比較常見的類型。随着網絡技術的不斷發展,Web服務器面臨着許多安全威脅,直接影響到Web服務器的安全。因此,加強Web服務器的安全防護是一項迫切需要的解決的時代課題。筆者結合多年的工作實踐,認為可從以下3個方面入手來加強Web服務器的安全防護。

第一,加強Web服務器的安全設置。

以Linux為操作平台的Web服務器的安全設置策略,能夠有效降低服務器的安全隐患,以确保Web服務器的安全性,主要包括:登錄有戶名與密碼的安全設置、系統口令的安全設置、BIOS的安全設置、使用SSL通信協議、命令存儲的修改設置、隐藏系統信息、啟用日志記錄功能以及設置Web服務器有關目錄的權限等。

第二,加強互聯網的安全防範。

Web服務器需要對外提供服務,它既有域名又有公網的網址,顯然存在一些安全隐患。所以,可給予Web服務器分配私有的地址,并且運用防火牆來做NAT可将其進行隐藏;同時因為一些攻擊來源于内網的攻擊,比如把内網計算機和Web服務器存放在相同的局域網之内,則在一定程度上會增加很多安全隐患,所以必須把它劃分為不同的虛拟局域網,運用防火牆的地址轉換來提供相互間的訪問,這樣就大大提高了Web服務器的安全性和可靠性;把Web服務器連接至防火牆的DMZ端口,将不适宜對外公布的重要信息的服務器放于内部網絡,進而在提供對外的服務的同時,可以最大限度地保護好内部網絡。

第三,網絡管理員要不斷加強網絡日常安全的維護與管理。

要對管理員用戶名與密碼定期修改;要對Web服務器系統的新增用戶情況進行定時核對,并且需要認真仔細了解網絡用戶的各種功能;要及時給予更新Web服務器系統的殺毒軟件以及病毒庫,必要時可針對比較特殊的病毒給予安裝專門殺毒的程序,同時要定期查殺Web服務器的系統病毒,定期查看CPU的正常工作使用狀态、後台工作進程以及應用程序,假若發現異常情況需要及時給予妥當處理;因為很多木馬與病毒均是運用系統漏洞來進行攻擊的,所以需要不斷自動更新Web服務器系統,以及定期掃描Web服務器系統的漏洞。

Web服務器已經成為了病毒、木馬的重災區。不但企業的門戶網站被篡改、資料被竊取,而且還成為了病毒與木馬的傳播者。有些Web管理員采取了一些措施,雖然可以保證門戶網站的主頁不被篡改,但是卻很難避免自己的網站被當作肉雞,來傳播病毒、惡意插件、木馬等等。這很大一部分原因是管理員在Web安全防護上太被動。他們隻是被動的防禦。為了徹底提高Web服務器的安全,Web安全要主動出擊。

漏洞測試

企業網站做的越來越複雜、功能越來越強。不過這些都不是憑空而來的,是通過代碼堆積起來的。如果這個代碼隻供企業内部使用,那麼不會帶來多大的安全隐患。但是如果放在互聯網上使用的話,則這些為實現特定功能的代碼就有可能成為攻擊者的目标。天眼舉一個簡單的例子。在網頁中可以嵌入SQL代碼。而攻擊者就可以利用這些SQL代碼來發動攻擊,來獲取管理員的密碼等等破壞性的動作。有時候訪問某些網站還需要有某些特定的控件。用戶在安裝這些控件時,其實就有可能在安裝一個木馬(這可能訪問者與被訪問者都沒有意識到)。

為此在為網站某個特定功能編寫代碼時,就要主動出擊。從編碼的設計到編寫、到測試,都需要認識到是否存在着安全的漏洞。天眼在日常過程中,在這方面對于員工提出了很高的要求。各個員工必須對自己所開發的功能負責。已知的病毒、木馬不能夠在你所開發的插件中有機可乘。通過這層層把關,就可以提高代碼編寫的安全性。

持續監控

冰凍三尺、非一日之寒。這就好像人生病一樣,都有一個過程。病毒、木馬等等在攻擊Web服務器時,也需要一個過程。或者說,在攻擊取得成功之前,他們會有一些試探性的動作。如對于一個采取了一定安全措施的Web服務器,從攻擊開始到取得成果,至少要有半天的時間。如果Web管理員對服務器進行了全天候的監控。在發現有異常行為時,及早的采取措施,将病毒與木馬阻擋在門戶之外。這種主動出擊的方式,就可以大大的提高Web服務器的安全性。

維護的Web服務器有好幾十個。專門有一個小組,來全天候的監控服務器的訪問。平均每分鐘都可以監測到一些試探性的攻擊行為。其中99%以上的攻擊行為,由于服務器已經采取了對應的安全措施,都無功而返。不過每天仍然會遇到一些攻擊行為。這些攻擊行為可能是針對新的漏洞,或者采取了新的攻擊方式。在服務器上原先沒有采取對應的安全措施。如果沒有及時的發現這種行為,那麼他們就很有可能最終實現他們的非法目的。相反,及早的發現了他們的攻擊手段,那麼我們就可以在他們采取進一步行動之前,就在服務器上關掉這扇門,補上這個漏洞。

在這裡也建議,企業用戶在選擇互聯網Web服務器提供商的時候,除了考慮性能等因素之外,還要評估服務提供商能否提供全天候的監控機制。在Web安全上主動出擊,及時發現攻擊者的攻擊行為。在他們采取進一步攻擊措施之前,就他們消除在萌芽狀态。

設置蜜罐

在軍隊中,有時候會給軍人一些“僞裝”,讓敵人分不清真僞。其實在跟病毒、木馬打交道時,本身就是一場無硝煙的戰争。為此對于Web服務器采取一些僞裝,也能夠将攻擊者引向錯誤的方向。等到供給者發現自己的目标錯誤時,管理員已經鎖定了攻擊者,從而可以及早的采取相應的措施。天眼有時候将這種主動出擊的行為叫做蜜罐效應。簡單的說,就是設置兩個服務器。其中一個是真正的服務器,另外一個是蜜罐。需要做的是,如何将真正的服務器僞裝起來,而将蜜罐推向公衆。讓攻擊者認為蜜罐服務器才是真正的服務器。要做到這一點的話,可能需要從如下幾個方面出發。

一是有真有假,難以區分。如果要瞞過攻擊者的眼睛,那麼蜜罐服務器就不能夠做的太假。天眼在做蜜罐服務器的時候,80%以上的内容都是跟真的服務器相同的。隻有一些比較機密的信息沒有放置在蜜罐服務器上。而且蜜罐服務器所采取的安全措施跟真的服務器事完全相同的。這不但可以提高蜜罐服務器的真實性,而且也可以用來評估真實服務器的安全性。一舉兩得。

二是需要有意無意的将攻擊者引向蜜罐服務器。攻擊者在判斷一個Web服務器是否值得攻擊時,會進行評估。如評估這個網站的流量是否比較高。如果網站的流量不高,那麼即使被攻破了,也沒有多大的實用價值。攻擊者如果沒有有利可圖的話,不會花這麼大的精力在這個網站服務器上面。如果要将攻擊者引向這個蜜罐服務器的話,那麼就需要提高這個蜜罐服務器的訪問量。其實要做到這一點也非常的容易。有很多用來交互流量的團隊。隻要花一點比較小的投資就可以做到這一點。

三是可以故意開一些後門讓攻擊者來鑽。作為Web服務器的管理者,不僅關心自己的服務器是否安全,還要知道自己的服務器有沒有被人家盯上。或者說,有沒有被攻擊的價值。此時管理者就需要知道,自己的服務器一天被攻擊了多少次。如果攻擊的頻率比較高,管理者就高興、又憂慮。高興的是自己的服務器價值還蠻大的,被這麼多人惦記着。憂慮的是自己的服務器成為了衆人攻擊的目标。就應該抽取更多的力量來關注服務器的安全。

攻防測試

俗話說,靠人不如靠自己。在Web服務器的攻防戰上,這一個原則也适用。天眼建議,如果企業對于Web服務的安全比較高,如網站服務器上有電子商務交易平台,此時最好設置一個專業的團隊。他們充當攻擊者的角色,對服務器進行安全性的測試。這個專業團隊主要執行如下幾個任務。

一是測試Web管理團隊對攻擊行為的反應速度。如可以采用一些現在比較流行的攻擊手段,對自己的Web服務器發動攻擊。當然這個時間是随機的。預先Web管理團隊并不知道。要評估的是,Web管理團隊在多少時間之内能夠發現這種攻擊的行為。這也是考驗管理團隊全天候跟蹤的能力。一般來說,這個時間越短越好。應該将這個時間控制在可控的範圍之内。即使攻擊最後沒有成功,Web管理團隊也應該及早的發現攻擊的行為。畢竟有沒有發現、與最終有沒有取得成功,是兩個不同的概念。

二是要測試服務器的漏洞是否有補上。畢竟大部分的攻擊行為,都是針對服務器現有的漏洞所産生的。這個專業團隊要做的就是,這些已發現的漏洞是否都已經打上了安全補丁或者采取了對應的安全措施。有時候我們都沒有發現的漏洞是無能為力,但是對于這些已經存在的漏洞不能夠放過。否則的話,也太便宜那些攻擊者了。

宕機診斷方法

步驟1:發生了什麼事

系統管理員必須肩負起分析和判斷Web服務器宕機原因的責任。需要解決如下的問題:

是否是斷電,發電機測試以及其他類似問題影響了整體物理環境?

和Web服務器的通信是否已經完全被阻斷,還是某些IP段依舊可以使用?

是否還可以管理服務器?

日志中是否有異常記錄?

這些隻是少部分管理員們需要立即回答的問題,在深入診斷問題之前,先解決上述問題。

步驟2:最簡單的解決方案往往是最好的

有很多時候會陷入診斷高級問題的誤區,分析各種可能的技術問題和疑難雜症。而實際上,退一步想,從宏觀角度思考問題,可能解決已花費無數工時和成本卻還未攻克的技術難題。例如,主機通電了嗎,或者是否有人無意間碰掉了電源線?如果機器确實已經通電,但沒有任何網絡連接,需要檢查網線或者光纖是否沒有接上或者松動。是的,這些看似明顯低級錯誤的解決方法,認為都不可能發生,但任何有經驗的系統管理員會告訴你,這些狀況的發生頻率遠比想的要多的多。

步驟3:基本故障處理方法沒有效果怎麼辦

現在已經檢查了所有電纜和其他外圍設備,可以試着使用ping命令探測設備狀況。幸運的是,ping命令是所有平台通用的,也是最簡單的。如果可以在局域網内ping通服務器,接着可以試試從局域網外ping服務器進行檢測。這樣做可以迅速判斷問題是否産生在交換和路由層面,而不是服務器級别。此外,如果Web服務器已經虛拟化,試着ping物理服務器自己的真實IP。這樣可以幫助進一步隔離問題。如果完全無法ping同服務器,而且也已經确定完全檢查了網絡連接,那麼就需要進行更深入的分析了。

步驟4:使盡渾身解數,服務器依然宕機

已經檢查過網線。也試過了ping服務器,依舊無法訪問服務器。好消息是,已經可以将問題定位到物理服務器或操作系統本身了。換句話說,已經可以開始集中精力對現存的問題進行排查。

接下來,才去從底層到高層的方式來逐層檢查問題,首先檢查網絡接口和本地網絡配置是否正常。DHCP是否啟動?Web服務器是否指向正确的DNS服務器?如果是這樣,可以根據使用的操作系統平台,檢查Web服務是否正常開啟。在Windows環境,需要檢查服務器是否具有Web服務的角色。在Linux環境下,檢查會更複雜,可以試試查找http相關的文件或服務來确保服務器是否正在運行。

步驟5:絕境下需要動用絕招

如果以上方法都不奏效,檢查日志并嘗試查明在Web服務器宕機時日志中記錄的那些信息。将這些信息發給在故障處理和解決領域更有經驗的專業人士,可能會獲得更多的幫助。同樣的,如果已經确認網絡連接不是問題,就可以使用Wireshark抓包工具對網絡中傳輸的數據進行抓取分析,以此協助處理問題。

總而言之,服務器宕機的原因多種多樣。斷電、配置錯誤、防火牆設置錯誤、甚至是來自互聯網的惡意流量,都可能引發源站宕機并讓系統管理員們抓狂。所有這些問題都足以讓企業決策者對冗餘解決方案的設計和實施加以重視,同樣的針對故障處理流程的設計和制定,還需要根據企業自身網絡的實際情況為依據。

選購指南

在這個電商已經普及的時代,一個企業,不管大小總是都需要有一個網站,在網絡上宣傳自己的品牌。這跟90年代你開了公司一定要有一個辦公室是一個道理了。而且更多的企業選擇電子商務。作為網站建設的基礎,服務器租用也成為必須要考慮的事情。

服務器租用選擇的成功與否,可以說在一定程度上直接影響着網站建設的成功與否。這不論是對大企業,還是中小企業建網站都是一樣的。

但實際,很多中小企業在建設網站,并選擇服務器作為其信息化基礎工具時,則出現一些不正确的做法:如為了節省資金,便随便租用或購買一台服務器。結果由于服務器性能低下導緻信息系統經常出問題。最終不但沒有幫助企業傳播信息,提升品牌,反而因系統不穩定,給企業帶來負面影響。

因此,擁有一款穩定、良好的服務器無疑是企業最基本的選擇。那麼,企業又該如何選擇優秀的服務器呢。我這裡想說下幾點。

第一、資質是最基本的,一定要有齊全的IDC服務商資質。如果沒有,不管是多好的服務器,都不要購買。連企業真假都不能确定的事情,你如何保證他的産品呢?

第二、對于中小企業不建議租用一線城市機房的服務器,原因很簡單。像北京上海這種一線機房,都是寸土寸金,服務器好不好先不說,但是光機房的成本就比二線、三線城市的要高得多。這費用當然要算到企業的頭上。而且二線、三線城市的機房其實是一樣的,但是它的成本要低得多。同樣的産品,為什麼不選價格低的呢?

第三、一定要考慮清楚你需要什麼服務器?比如說品牌、配置,或者說是需要服務器租用、服務器托管還是服務器合租等等。這些都需要根據自身企業的需求來确定。如果自己不清楚,可以選擇咨詢IDC服務商,不放心的話可以在網上問相關的專業人士。

發展趨勢

Web服務器的發展有三個主要趨勢:

從HTML

标準通用标記語言的子集可擴展标記語言(eXtensible Markup Language)

标準通用标記語言的子集HTML被稱為“第一代Web語言”,如前面的介紹,HTML作為Web的開發語言,對Web應用的發展起到了關鍵性的作用。但是HTML有一個緻命的缺點:隻适合于人與計算機的交流,不适合計算機與計算機的交流。HTML通過大量的标記來定義文檔内容的表現方式,它僅僅描述了應如何在Web浏覽器頁面上布置文字、圖形,并沒有對Internet的信息含義本身進行描述,而信息又是Web應用中最重要的内容。通過HTML表現出來的文字、圖形内容很容易被人理解,但卻不利于計算機程序去理解。另外,HTML的另一個問題就是它的标記集合是固定的,用戶不能根據自己的需要增加标記;而且各種浏覽器的規格不盡相同,要使我們用HTML做的網頁能夠被所有浏覽器正常顯示,我們隻能夠使用W3C(萬維網協會)規定的标記來創建網頁。

正如前面所說,Web服務器向Web浏覽器提供的信息都是來自有一定結構的數據庫,在數據庫裡,為了檢索和管理的方便,信息按照它本身的意義(如姓名、年齡、工作單位等)被存放在相應的字段裡,一旦這些數據被調出來,經過CGI、ASP、JSP、PHP等轉換成HTML後,其原來的意義無法轉移到HTML标記中來,用戶也就無法按照信息本來的意義去閱讀。并且,由于操作系統以及數據庫的不同,不同的系統及應用層面之間要想互相理解對方的數據格式是相當困難的。這就需要一種新技術或标準能夠将最初保存在數據庫服務器中的原始數據結構在不同的系統層面共享。這種新技術就是XML。

使用XML可以解決上述的難題。W3C對XML作了如下描述:“XML描述了一類被稱為XML文檔的數據對象,并部分描述了處理它們的計算機程序的行為。XML是标準通用标記語言的一個應用實例。從結構上說,XML文檔遵從标準通用标記語言文檔标準。”同HTML一樣,XML也是一種基于文本的标記語言,都是從标準通用标記語言發展而來,二者的不同在于:XML可以讓我們根據要表現的文檔,自由地定義标記來表現具有實際意義的文檔内容,例如,我們可以定義〈文檔名稱〉〈/文檔名稱〉這樣具有實際意義的标記。而且XML不像HTML那樣具有固定的标記集合,它實際上是一種定義語言的語言,也就是說使用XML的用戶可以定義無窮的标記來描述文檔中的任何數據元素,将文檔的内容組織成豐富的完整的信息體系。總起來說,XML具有四大特點:便于存儲的數據格式、可擴展性、高度結構化以及方便的網絡傳輸,這些特點為我們創建開放、高效、可擴展、個性化的Web應用提供了一個嶄新的起點。

從有線到無線

Aberdeen集團的研究主任Darcy Fowkes認為,采用無線方式進行電子商務的優勢并不僅僅在于方便,它還可以節約公司的财力,而且,移動辦公能使工作更加高效。

然而,由于多種無線網絡類型、标記語言、協議和無線設備并存的複雜情況,使得網絡内容和數據轉換成能夠被無線設備所識别的格式并不容易。許多企業都在緻力于開發能夠把應用程序以及互聯網内容擴展到無線設備上的産品。

例如,IBM的WebSphere Transcoding Publisher 3.5增加和改進了許多新的特性,可以将企業内部網上的數據翻譯到多種無線設備上。該版本中新的特性包括對更多的無線設備、數據格式的支持,以及語言翻譯功能。它基于Java架構,能把用HTML和XML等标記語言編寫的應用程序和數據轉換成WML、HDML(Handheld Device Markup Language)和iMode等無線設備所能識别的格式,這樣,通過手持設備就可以訪問互聯網上的信息。

無線設備廠商Mobilize也推出了Mobilize Commerce産品,幫助企業進入無線網絡。該軟件可以通過無線連接的方式訪問企業的内部系統,遠程地實現訂單發送,并進行确認。Mobilize Commerce可以充分利用XML對信息進行格式轉換,以适合于無線設備,這些無線設備包括筆記本電腦、個人數字助理、無線電話、網絡電話和雙向尋呼等。

從無聲到有聲

世界上有十億個電話終端,有超過2億的移動電話。而就人自身的交流習慣來看,人們也更願意利用聽和說的口頭的方式進行交流。

文本語音轉換器(TTS,Text to Speech)的研究工作已經取得了很大的進步,實現了自動的語言分析理解,并允許TTS的使用者增加更多的韻律、音調在講話中,使TTS系統的發聲更接近人聲。在自動語音識别系統(ASR)領域裡,自動語音識别系統在從整個詞的模仿匹配,向音素層次的識别系統方向發展。自動語音識别系統的詞彙表由一個基于聲音片斷的字母表構成,而且這種詞彙表是受不同語言限制的。基于這種方式,在一個寬廣的聲音行列裡,講話能被識别系統發現和挑揀出來,并加以識别。并且,在識别一個詞的時候,每一個音素将從系統的輸入中挑揀出來,拼接組合後與已經有的音素和詞語模闆進行比較,來産生需要的模闆。音素的識别大大減輕了ASR對講話者的依賴性,并且使得它非常容易去建立大型的和容易修改的語音識别字典,從而滿足不同應用市場的需求。

Web語音發展的另一方面是VoiceXML(Voice Extensible Markup Language-語音可擴展标記語言)的進展。VoiceXML的主要目标是要将Web上已有的大量應用、豐富的内容,讓交互式語音界面也能夠全部享受。Web服務器處理一個來自客戶端應用的請求,這一請求經過了VoiceXML解釋程序和VoiceXML解釋程序語境處理,作為響應,服務器産生出VoiceXML文件,在回複當中,要經過VoiceXML解釋程序的處理。VoiceXML 1.0規範基于XML,為語音和電話應用的開發者、服務提供商和設備制造商提供了一個智能化的API。VoiceXML的标準化将簡化Web上具有語音響應服務的個性化界面的創建,使人們能夠通過語音和電話訪問網站上的信息和服務,像今天通過CGI腳本一樣檢索中心數據庫,訪問企業内部網,制造新的語音訪問設備。VoiceXML的執行平台上面加載了相應的軟件和硬件,例如,ASR、TTS,從而實現語音的識别以及文本和語音之間的轉化。2000年5月23日,W3C接受了語音可擴展标記語言VoiceXML 1.0作為實例。

IBM、Nokia、Lucent、Motorola等著名廠商都已經開發出相應支持VoiceXML的産品,ASR和TTS系統大多還不能支持中文。

相關詞條

相關搜索

其它詞條