足彩总进球数二三球足彩总进球数二三球

Linux Apache Web 服務器



作者:    文章來源:
發布日期:2006年06月25日
一、什么是WWW服務

現在在Internet上最熱門的服務之一就是環球信息網WWW(World Wide Web)服務,Web已經成為很多人在網上查找、瀏覽信息的主要手段。WWW是一種交互式圖形界面的Internet服務,具有強大的信息連接功能。它使得成千上萬的用戶通過簡單的圖形界面就可以訪問各個大學、組織、公司等的最新信息和各種服務。

商業界很快看到了其價值,許多公司建立了主頁,利用Web在網上發布消息,并反它作為各種服務的界面,如客戶服務、特定產品和服務的詳細說明、宣傳廣千以及是漸增長的產品銷售和服務。商業用途促進了環球信息網絡的迅速發展。

如果你想通過主頁向世界介紹自己或自己的公司,就必須將主頁放在一個WEB服務器上,當然你可以使用一些免費的主頁空間來發布。但是如果你有條件,你可以注冊一個域名,申請一個IP地址,然后讓你的ISP將這個IP地址解析到你的LINUX主機上。然后,在LINUX主機上架設一個WEB服務器。你就可以將主頁存放在這個自己的WEB服務器上,通過它把自己的主頁向外發布。

WWW是基于客戶機/服務器方式的信息發現技術和超文本技術的綜合。WWW服務器通過HTML超文本標記語言把信息組織成為圖文并茂的超文本;WWW瀏覽器則為用戶提供基于HTTP超文本傳輸協議的用戶界面。用戶使用WWW瀏覽器通過Internet訪問遠端WWW服務器上的HTML超文本,如下圖所示:

http協議

WWW瀏覽器 <-----> WWW服務器


在WWW的客戶機/服務器工作環境中,WWW瀏覽器起著控制作用,WWW瀏覽器的任務是使用一個URL(Internet地址)來獲取一個WWW服務器上的WEB文檔,解釋這個HTML,并將文檔內容以用戶環境所許可的效果最大限度地顯示出來。整個流程如下:


WWW瀏覽器根據用戶輸入的URL連到相應的遠端WWW服務器上;


取得指定的WEB文檔;


斷開與遠端WWW服務器的連接。

也就是說,平時我們在瀏覽某個網站的時候是每取一個網頁建立一次連接,

讀完后馬上斷開;當需要另一個網頁時重新周而復始。

二、WWW服務器軟件的比較和選擇

目前,在世界各地有許多公司和學術團體,根據不同的計算機系統,開發出不同的WWW服務器,如Apache、CERN httpd、Microsoft Internet Information System、NCSA httpd、Plexus httpd、WebSite等。在UNIX/LINUX系統中常用的有:CERN、NCSA、Apache三種


CERN httpd

這是最早期的WWW服務器軟件,用C語言編寫,現在功能有限,用戶在

縮減中。有興趣的話可以在:ftp://ftp.w3.org/pub/WWW/bin中找到它。


NCSA httpd

這是在WWW服務器發展初期,美國國家超級計算機應用中心(NCSA)

在1995年創建的當時一流的WWW服務器。它也是用C語言編寫的,程序小、速度快。但是現在NCSA WWW服務器的主要開發人員已經離開了NCSA,這個服務器項目已經停頓了。相信大家不會選擇一個沒有發展的WWW服務器軟件吧!

當然,由于它的特殊歷史地位,相信使用它的人現在還不少。如果你需要可以在ftp://ftp.ncsa.uiuc.edu獲取它。


Apache

根據著名的WWW服務器調查公司所作的調查,世界上百分之五十以上的

WWW服務器都在使用Apache,是世界排名第一的WEB服務器。

Apache的誕生極富有戲劇性。當NCSA WWW服務器項目停頓后,那些使用NCSA WWW服務器的人們開始交換他們用于該服務器的補丁程序,他們也很快認識到成立管理這些補丁程序的論壇是必要的。就這樣,誕生了Apache Group,后來這個團體在NCSA的基礎上創建了Apache。

Apache的主要特征是:

. 可以運行上所有計算機平臺;

. 支持最新的HTTP 1.1協議;

. 簡單而強有力的基于文件的配置;

. 支持通用網關接口CGI;

. 支持虛擬主機;

. 支持HTTP認證;

. 集成Perl腳本編程語言;

. 集成的代理服務器;

. 具有可定制的服務器日志;

. 支持服務器端包含命令(SSI)

. 支持安全Socket層(SSL)

. 用戶會話過程的跟蹤能力;

. 支持FastCGI;

. 支持Java Servlets。

我們還有什么理由放棄這個功能強大而且前途光明的WWW服務器軟件呢?

三、安裝Apache

下面我們就開始漫漫征服Apache之旅,通過循序漸進的需求實例,一步步地學習使用Apache,從入門到精通。

3.1 系統需求

運行Apache不需要太多的計算資源。它在有6-10MB硬盤空間和8MB RAM的Linux系統上運行得很好。然而,只運行Apache可能不是你想做的事情。更可能的是,你想運行Apache來提供WWW服務、啟動CGI進程以及充分利用所有WWW能夠提供的令人驚奇的功能。在這種情況下,你需要提供反映負載要求的額外的磁盤空間和內存空間。也就是說,如果僅僅是啟動WWW服務并不需要太多的系統資源,但是想要能為大量的客戶提供服務就需要更多的系統資源。

3.2 獲取軟件

你可以在//www.apache.org中獲得Apache的最新版。而幾乎所有的Linux發行版中均包含有Apache軟件包,你也可以直接使用它。

需要注意的是,Apache軟件包有兩種:一種是源代碼,下載后需要自己重新編譯;另一種是可執行文件,下載后只需解壓就可以使用。

3.3 安裝軟件

你可以通過以下三種方法安裝Apache服務器。

1.如果你安裝的Linux版本中帶用Apache的話,就在選擇所要安裝的服務器的時候,將httpd這個服務選上,Linux安裝程序將自動完成Apache的安裝工作,并做好基本的配置。

2.使用可執行文件軟件包,這比較適合那些對編譯工作不是太熟悉的初級用戶,因為它相對比較簡單。


下載軟件包apache_1.2.4.e.tar.gz


tar xvzf apache_1.2.4.e.tar.gz

這就完成了安裝工作,簡單吧!

如果你使用的是RedHat Linux的話,你也可以下載apache_1.2.4.rpm軟件安

裝包,然后使用rpm ?ivh apache_1.2.4.rpm命令安裝。

3.如果你想把Apache服務器充分利用起來的話,就一定要自己編譯Apache

定制其功能。


下載包含Apache源代碼的軟件包apache_1.2.4.tar.gz;


然后用tar命令將它解開;


將當前目錄改變為Apache源代碼發行版的src目錄;


將配置樣本文件(Configuration.tmpl)復制為Configuration文件;


編輯Configuration文件中的配置選項:


Makefile配置選項:一些編譯選項:

. “CC=”一行指定用什么編譯軟件編譯,一般為“CC=gcc”;

. 如果需要將額外的標志(參數)指定給C編譯軟件,可以使用:

EXTRA_CFLAGS=

EXTRA_LFLAGS=

. 如果系統需要特殊的庫和包含文件,可以在這里指定它們:

EXTRA_LIBS=

EXTRA_INCLUDES=

. 如果你要改變代碼優化設置的話,你須將下面一句去掉注釋,然

后改成你所需要的值:

#OPTIM=-O2


Rule配置選項:用來決定需要什么功能,一般情況下無需改變。


??榕渲茫耗?槭茿pache的組成部分,它為Apache內核增加新功能。通過使用??榕渲?,可以自定義在Apache服務器中需要什么功能,這個部分也是Apache靈活性的表現。??榕渲瞇腥縵濾荊?

AddModule modules/standard/mod_env.o

如果你需要Apache服務器具備什么功能,就將那個??橛肁ddModule語句加到配置文件Configuration中去。

下表列出了Apache的??楣δ埽?br />
??槊? 功能 缺省
mod_access 提供基于主機的訪問控制命令 y
mod_actions 能夠運行基于MIME類型的CGI腳本或HTTP請求方法 y
mod_alias 能執行URL重定向服務 y
mod_asis 使文檔能在沒有HTTP頭標的情況下被發送到客戶端 y
mod_auth 支持使用存儲在文本文件中的用戶名、口令實現認證 y
mod_auth_dbm 支持使用DBM文件存儲基本HTTP認證 n
mod_auth_mysql 支持使用MySQL數據庫實現基本HTTP認證 n
mod_auth_anon 允許以匿名方式訪問需要認證的區域 y
mod_auth_external支持使用第三方認證 n
mod_autoindex 當缺少索引文件時,自動生成動態目錄列表 y
mod_cern_meta 提供對元信息的支持 n
mod_cgi 支持CGI y
mod_dir 能夠重定向任何對不包括尾部斜杠字符命令的請求 y
mod_env 使你能夠將環境變量傳遞給CGI或SSI腳本 n
mod_expires 讓你確定Apache在服務器響應請求時如何處理Expires y
mod_headers 能夠操作HTTP應答頭標 y
mod_imap 提供圖形映射支持 n
mod_include 使支持SSI n
mod_info 對服務器配置提供了全面的描述 y
mod_log_agent 允許在單獨的日志文件中存儲用戶代理的信息 n
mod_log_config 支持記錄日志 y
mod_log_referer 提供了將請求中的Referer頭標寫入日志的功能 n
mod_mime 用來向客戶端提供有關文檔的元信息 y
mod_negotiation 提供了對內容協商的支持 y
mod_setenvif 使你能夠創建定制環境變量 y
mod_speling 使你能夠處理含有拼寫錯誤或大小寫錯誤的URL請求 n
mod_status 允許管理員通過WEB管理Apache y
mod_unique_id 為每個請求提供在非常特殊的條件下保證是唯一的標識 n

表一:Apache??楣δ芤煥辣?br />


在src目錄下執行:“. /configure”;


編譯Apache:執行命令“make”;


根據機器性能的不同,經歷一段5-30分鐘的編譯,就大功告成了。


將編譯好的可執行文件httpd復制到/etc/httpd/bin目錄下;


將Apache發行版的配置文件:access.conf、httpd.conf、mime.types、srm.conf文件復制到/etc/httpd/conf目錄下。到此為止,安裝完成。
3.4 一些說明

在Red Hat Linux 6.0中,Apache將自己的所有配置文件和日志文件放在了“/etc/httpd”目錄下,其中“/etc/httpd/conf”下為配置文件,“/etc/httpd/log”下為日志文件。

同時,它將建立“/home/httpd”目錄,并在其下建立三個子目錄:“html/”:在這個目錄下存放HTML(主頁)文件;“cgi-bin/”:在這個目錄下可以存放一些CGI程序;“icons/”:在這個目錄下是服務器自帶的一些圖標。
Copyright © 2002-2012 www.ngfcl.com. All rights reserved.
JSP中文網    備案號:粵ICP備09171188號
成都恒??萍擠⒄褂邢薰?nbsp;   成都市一環路南二段6號新瑞樓三樓8號