Ⅰ 畢業論文:linux系統的web伺服器架設
LINUX系統中常見的有:CERN、NCSA、Apache三種方式,一般最常用的方法就是用Apache。此種方式特點明顯,配置簡明,具有最大的對系統兼容性,以下是用此方式配置基於Linux的WEB伺服器的全過程。
一. Apache伺服器慨述。
其特徵是顯著的:可以運行於所有計算機平台,自然包括UNIX/LINUX系統;集成代理伺服器和Perl編程腳本;對用戶的訪問會話過程跟蹤;可對伺服器日誌定製;還支持虛擬主機及HTTP認證等等。再配合LINUX系統本身的強大,我們沒理由不選擇Apache。
二. 安裝Apache。
一般說來,所有Linux版本應該包含有此軟體包的安裝,如果你在安裝Linux系統沒有安裝此軟體包,可以從安裝光碟或是http://www.apache.org/網站上找到其安裝文件(注意網上有兩種版本:一種是下載後需重新編譯的源代碼,一種是只需解壓就可使用的可執行文件),然後執行安裝即可。
1. 如果你下載的是可執行文件包如:apache_1.2.4.e.tar.gz(當中的數字視你下載的版本而定,此為舉例),那這就相對簡單,比較適合對Linux編譯不熟悉的初級用戶,只需執行:tar xvzf apache_1.2.3.4.tar.gz即可完成安裝。
2. 如果下載的是源代碼如:apache_1.2.4.rpm,則先用rpm –ivh apache_1.2.4.rpm安裝,然後在src目錄下執行「./configure」;接著執行「make」命令編譯Apache;接著將編譯好的可執行文件復制到/etc/httpd/bin目錄下;再將Apache的配置文件:httpd.conf、access.conf 、srm.conf和mime.types復制到/etc/httpd/conf目錄下,才算完成安裝。
三. 配置Apache,實現WEB服務。
其實,到現在你的Linux已經開始WEB服務了,你要做的只需將Linux系統連入互聯網,然後將主頁存放於「/home/httpd」目錄下即可。但為了讓此WEB伺服器更有效率的工作,我們還需對其作些設置,具體需要配置的其實就是剛才復制的那4個文件。以下對其主要的兩個配置文件httpd.conf和access.conf作些說明:
1. httpd.conf.
此文件是主配置文件,主要用來設置伺服器啟動的基本環境,也就是說它負責安排WEB伺服器怎樣運行。其相關設置參數為:
ServerTypestandalone/inetd:此選項作用就是指定以何種方式運行WEB伺服器。其中standalone參數表示WEB服務進程以一個單獨的守候進程的方式在後台偵聽是否有客戶端的請求,如果有就生成一個子進程來為其服務;其效率更高。主要是設置主伺服器進程偵聽的特定埠地址,方法為:Port[number] (預設為80)。
而inetd模式相對standalone來說它更安全,此模式也是RedHat Linux運行Apache的默認方式。如果你的版本不是RedHat,則需在/etc/inetd.conf文件里加入以下一新行:httpd stream tcp nowait httpd /etc/httpd/bin/httpd –f /etc/httpd/conf/httpd.conf;然後在/etc/services文件里同樣添加一新行:httpd 80/tcp httpd即可。
ErrorLog:用來指定錯誤記錄的文件名稱和路徑。格式如:ErrorLog /var/httpd/error.log。
ServerRoot:用來指定將伺服器的配置及日誌文件存於何處。格式如:ServerRoot /etc/httpd。
Server Admin: 設置WEB管理員的E-Mail地址.格式如:Server [email protected]。
2. srm.conf
這是Apache的資源配置文件,作用為告訴伺服器你想在WWW站點上提供的資源及如何提供,其主要參數為:
DocumentRoot: 用來指定主文檔的地址。格式如:DocumentRoot /home/httpd/html。
DirectoryIndex:跟windows平台的IIS設置一樣,用來指定首頁文件的名稱。大家都知道,首頁一般都以「index.html」或「index.htm」作為文件名。當設置為這兩種文件名之後,只要用戶發出WEB請求,即將調入以「index.html」或「index.htm」命名的主頁。格式如:DirecotryIndex index.html index.htm。
經過以上簡單的配置後,你的WEB伺服器已經具備基本的功能了。接下來要做的就是重啟WEB服務,使剛才的配置生效,我們可以用以下命令來完成:
/etc/rc.d/init.d/httpd restart
最後,我們來看看基於Apache服務的安全方面。Apache伺服器通過認證系統能控制哪些主機可以訪問某些特定的站點。具體來說,它通過兩種方式來實現:
一種是基於主機地址的認證,但由於目前大部分上網用戶使用的都是動態地址,因此此種方式並沒多少實際意義;
另一種方式是基於用戶名/口令的認證方式,不言而喻,此種方式更適合如今的網路狀況,而對於具體的用戶名/口令認證實現。
Ⅱ Linux中最常用的Web伺服器軟體是什麼有何特點(常用的web伺服器軟體有哪些)
apache
Apache是世界使用排名第一的Web伺服器軟體。它可以運行在幾乎所有廣泛使用的計算機平台上。
Apache源於NCSAhttpd伺服器,經過多次修改,成為世界上最流行的Web伺服器軟體之一。Apache取自「apatchyserver」的讀音,意思是充滿補丁的伺服器,因為它是自由軟體,所以不斷有人來為它開發新的功能、新的特性、修改原來的缺陷。Apache的特點是簡單、速度快、性能穩定,並可做代理伺服器來使用。
本來它只用於小型或試驗Internet網路,後來逐步擴充到各種Unix系統中,尤其對Linux的支持相當完美。Apache有多種產品,可以支持SSL技術,支持多個虛擬主機。Apache是以進程為基礎的結構,進程要比線程消耗更多的系統開支,不太適合於多處理器環境,因此,在一個ApacheWeb站點擴容時,通常是增加伺服器或擴充群集節點而不是增加處理器。到目前為止Apache仍然是世界上用的最多的Web伺服器,市場佔有率達60%左右。世界上很多著名的網站如Amazon、Yahoo!、W3Consortium、FinancialTimes等都是Apache的產物,它的成功之處主要在於它的源代碼開放、有一支開放的開發隊伍、支持跨平台的應用(可以運行在幾乎所有的Unix、Windows、Linux系統平台上)以及它的可移植性等方面。
Apache的誕生極富有戲劇性。當NCSAWWW伺服器項目停頓後,那些使用NCSAWWW伺服器的人們開始交換他們用於該伺服器的補丁程序,他們也很快認識到成立管理這些補丁程序的論壇是必要的。就這樣,誕生了ApacheGroup,後來這個團體在NCSA的基礎上創建了Apache。
Apacheweb伺服器軟體擁有以下特性:
支持最新的HTTP/1.1通信協議
擁有簡單而強有力的基於文件的配置過程
支持通用網關介面
支鎮畝持基於IP和基於域名的虛擬主機
支持多種方式的HTTP認證
集成Perl處理模塊
集成代理伺服器模塊
支持實時監視伺服器狀態和定製伺服器日誌
支持伺服器頌旅氏端包含指令(SSI)
支持安全Socket層(SSL)
提供用戶會話過程的跟蹤
支持FastCGI
通過第三方模塊可以支持JavaServlets
如果你准備選擇Web伺服器,毫無疑問Apache是你的最佳選擇。
Apache有名的幾個項目介紹
HTTPServer
這個在前面的段落介紹過了,Apache已經是他的代號了
ActiveMQ
免費開源由java編寫符合JMS1.1標準的消息中間件。
另外,它也支持通過除java語言外的語言的使用
Ant
這個太出名了。標準的批處理工具。是一套基於java的程序打造工具
Commons
一些常用的工具類庫,包括common-pool,dbcp,fileupload,Common-beans等。
Excalibur
它的主要產品是一個由java寫成的,名字叫做Fortress(要塞)的輕量級的可嵌入式反向控制容器。
iBATIS
並入的一個項目,是ORM的一個很流行的工具
Geronimo
是Apache軟體基金會為了創造一個兼容j2ee的容器,而整理出來的一個新成果
Jakarta
許多Java子項目的集野散成,tomcat,ant等就是從這里孵化出去的。
James
是一套用java開發的郵件、新聞組、消息伺服器。它使用的avalon組件框架。目前支持SMTP,POP3和NNTP很快也會支持IMAP
Logging
基於java的可靠,快速,擴展性強的日誌工具
Maven
是一套java開發的工程綜合管理工具。它基於工程對象模型(POM)的理念
Portals
門戶產品
Struts
一套通過servlets和jsp來搭建web應用的MVC框架
Tomcat
用量最大的免費的Java伺服器