Linux Apache Web 服務器_伺服器

來源:互聯網
上載者:User
 
商業界很快看到了其價值,許多公司建立了首頁,利用Web在網上發布訊息,並反它作為各種服務的介面,如客戶服務、特定產品和服務的詳細說明、宣傳廣千以及是漸增長的產品銷售和服務。商業用途促進了環球資訊網路的迅速發展。 
如果你想通過首頁向世界介紹自己或自己的公司,就必須將首頁放在一個WEB伺服器上,當然你可以使用一些免費的首頁空間來發布。但是如果你有條件,你可以註冊一個網域名稱,申請一個IP地址,然後讓你的ISP將這個IP位址解析到你的LINUX主機上。然後,在LINUX主機上架設一個WEB伺服器。你就可以將首頁存放在這個自己的WEB伺服器上,通過它把自己的首頁向外發布。 
WWW是基於客戶機/伺服器方式的資訊發現技術和超文本技術的綜合。WWW伺服器通過HTML超文字標記語言 (HTML)把資訊組織成為圖文並茂的超文本;WWW瀏覽器則為使用者提供基於HTTP超文字傳輸通訊協定 (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語言編寫,現在功能有限,使用者在 
縮減中。有興趣的話可以在:中找到它。 

NCSA httpd 
這是在WWW伺服器發展初期,美國國家超級電腦應用中心(NCSA) 
在1995年建立的當時一流的WWW伺服器。它也是用C語言編寫的,程式小、速度快。但是現在NCSA WWW伺服器的主要開發人員已經離開了NCSA,這個伺服器項目已經停頓了。相信大家不會選擇一個沒有發展的WWW伺服器軟體吧! 
當然,由於它的特殊曆史地位,相信使用它的人現在還不少。如果你需要可以在擷取它。 

Apache 
根據著名的WWW伺服器調查公司所作的調查,世界上百分之五十以上的 
WWW伺服器都在使用Apache,是世界排名第一的WEB伺服器。 
Apache的誕生極富有戲劇性。當NCSA WWW伺服器項目停頓後,那些使用NCSA WWW伺服器的人們開始交換他們用於該伺服器的補丁程式,他們也很快認識到成立管理這些補丁程式的論壇是必要的。就這樣,誕生了Apache Group,後來這個團體在NCSA的基礎上建立了Apache。 
Apache的主要特徵是: 
. 可以運行上所有電腦平台; 
. 支援最新的HTTP 1.1協議; 
. 簡單而強有力的基於檔案的配置; 
. 支援通用閘道介面CGI; 
. 支援; 
. 支援HTTP認證; 
. 整合Perl指令碼程式設計語言; 
. 整合的Proxy 伺服器; 
. 具有可定製的伺服器日誌; 
. 支援伺服器端包含命令(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 擷取軟體 
你可以在中獲得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配置選項:用來決定需要什麼功能,一般情況下無需改變。 

模組配置:模組是Apache的組成部分,它為Apache核心增加新功能。通過使用模組配置,可以自訂在Apache伺服器中需要什麼功能,這個部分也是Apache靈活性的表現。模組配置行如下所示: 
AddModule modules/standard/mod_env.o 
如果你需要Apache伺服器具備什麼功能,就將那個模組用AddModule語句加到設定檔Configuration中去。 
下表列出了Apache的模組功能: 
模組名 功能 預設 
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模組功能一覽表 

在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/”:在這個目錄下是伺服器內建的一些表徵圖。 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.