共找到5條詞條名為apache的結果 展開

apache

1995年開發的Web伺服器軟體

Apache是世界使用排名第一的Web伺服器軟體。它可以運行在幾乎所有廣泛使用的計算機平台上,由於其跨平台和安全性被廣泛使用,是最流行的Web伺服器端軟體之一。它快速、可靠並且可通過簡單的API擴充,將Perl/Python等解釋器編譯到伺服器中。

同時Apache音譯為阿帕奇,是北美印第安人的一個部落,叫阿帕奇族,在美國的西南部。也是一個基金會的名稱、一種武裝直升機等等。

發展沿革


Apache HTTP Server(簡稱Apache)是Apache軟體基金會的一個開放源碼的網頁伺服器,可以在大多數計算機操作系統中運行,由於其多平台和安全性被廣泛使用,是最流行的Web伺服器端軟體之一。它快速、可靠並且可通過簡單的API擴展,將Perl/Python等解釋器編譯到伺服器中。
Apache HTTP伺服器是一個模塊化的伺服器,源於NCSAhttpd伺服器,經過多次修改,成為世界使用排名第一的Web伺服器軟體。
它可以運行在幾乎所有廣泛使用的計算機平台上。
Apache
Apache
Apache是世界排名第一的Web伺服器,世界上50%以上的Web伺服器在使用Apache。1995年4月,最早的Apache(0.6.2版)由Apache Group公布發行。Apache Group是一個完全通過Internet進行運作的非盈利機構,由它來決定ApacheWeb伺服器的標準發行版中應該包含哪些內容。准許任何人修改隱錯,提供新的特徵和將它移植到新的平台上,以及其它的工作。當新的代碼被提交給Apache Group時,該團體審核它的具體內容,進行測試,如果認為滿意,該代碼就會被集成到Apache的主要發行版中。
Apache源於NCSAhttpd伺服器,經過多次修改,成為世界上最流行的Web伺服器軟體之一。Apache取自“a patchy server”的讀音,意思是充滿補丁的伺服器,因為它是自由軟體,所以不斷有人來為它開發新的功能、新的特性、修改原來的缺陷。Apache的特點是簡單、速度快、性能穩定,並可做代理伺服器來使用。
本來它只用於小型或試驗Internet網路,後來逐步擴充到各種Unix系統中,尤其對Linux的支持相當完美。Apache有多種產品,可以支持SSL技術,支持多個虛擬主機。Apache是以進程為基礎的結構,進程要比線程消耗更多的系統開支,不太適合於多處理器環境,因此,在一個Apache Web站點擴容時,通常是增加伺服器或擴充群集節點而不是增加處理器。到目前為止Apache仍然是世界上用的最多的Web伺服器,市場佔有率達60%左右。世界上很多著名的網站如Amazon、Yahoo!、W3 Consortium、Financial Times等都是Apache的產物,它的成功之處主要在於它的源代碼開放、有一支開放的開發隊伍、支持跨平台的應用(可以運行在幾乎所有的Unix、Windows、Linux系統平台上)以及它的可移植性等方面。
Apache的誕生極富有戲劇性。當NCSAWWW伺服器項目停頓后,那些使用NCSA WWW伺服器的人們開始交換他們用於該伺服器的補丁程序,他們也很快認識到成立管理這些補丁程序的論壇是必要的。就這樣,誕生了Apache Group,後來這個團體在NCSA的基礎上創建了Apache。

初期

Apache起初由伊利諾伊大學香檳分校的國家超級計算機應用中心(NCSA)開發。此後,Apache Httpd被開放源代碼團體的成員不斷地發展和加強。Apache Http網站伺服器擁有牢靠可信的美譽,已經在全球超過半數的網站中——特別是幾乎所有最熱門和瀏覽量最大的網站。比方說,維基百科網站伺服器就是使用Apache的。
發展剛開始發展時,Apache只是Netscape網頁伺服器(現在是Sun ONE)之外的開放源代碼選擇之一。慢慢地,它開始在功能和速度超越其他基於Unix的HTTP伺服器。到了Apache 2.x的時代,實際效率又比Apache 1.x更快,2.x比1.x能同時服務更多的網頁連接數。
1996年4月以來,Apache一直是Internet上最流行的HTTP伺服器:1999年5月它在57%的網頁伺服器上運行,到了2005年7月這個比例上升到了69%。在2005年11月最風光的時候達到接近70%的市佔率,不過在部份擁有大量域名的主機域名商轉換為微軟IIS平台後,Apache市佔率近年來體現些微下滑。同時搜索引擎巨擘Google自己的網頁伺服器平台GWS推出后(也可說是一種修改版的Apache),再加上nginx、Lighttpd等輕量化網頁伺服器軟體在市場上有一些能見度,這些因素都反應在整體網頁伺服器市佔率的消長,Apache的市佔率就隨之滑落。根據en:Netcraft在2009年2月的最新統計數據,Apache的市佔率已經降為49.41%,IIS降為34%,GWS 8.39%,nginx 2.95%。儘管如此,Apache仍舊是當前網際網路市場上,市佔率最高的網頁伺服器軟體。命名作者宣稱因為Apache這個名字好記,所以才在最初選擇它,但是流傳最廣的解釋是(也是最顯而易見的):這個名字來自於一個事實:當Apache在1995年初開發的時候,它是由當時最流行的HTTP伺服器NCSA HTTPd 1.3的代碼修改而成的,因此是“一個修補的(a patchy)”伺服器。然而,在Apache伺服器官方網站的FAQ中是這麼解釋的:“Apache這個名字是為了紀念名為Apache的美洲原住民印第安人的一支,眾所周知他們擁有高超的作戰策略和無窮的耐性”。無論如何,Apache 2.x 分支不包含任何NCSA的程序代碼。

主要功能


特性

Apacheweb伺服器軟體擁有以下特性:
apache
apache
1、幾乎可以運行在所有的計算機平台上。
2、支持最新的HTTP/1.1協議。
3、簡單而且強有力的基於文件的配置(HTTPD.CONF)。
4、支持通用網關介面。
5、支持虛擬主機。
6、支持HTTP認證。
7、集成PERL。
8、集成的代理伺服器。
9、可以通過WEB瀏覽器監視伺服器的狀態,可以自定義日誌。
10、支持伺服器端包含命令(SSI)。
11、支持安全SOCKET層(SSL)。
12、具有用戶會話過程的跟蹤能力。
13、支持FASTCGI。
14、支持JAVASERVLETS。
如果你準備選擇Web伺服器,毫無疑問Apache是你的最佳選擇。

相關模塊

1.SSO Module-LemonLDAP
LemonLdap是Apache的一個實現了Web SSO的模塊,可處理超過20萬的用戶。
2.併發限制模塊-limitipconn
limitipconn是一個Apache的模塊,用來限制每個IP的併發連接數。支持Apache 1.x和2.x。
3.日誌監控模塊
Apache Live Log是一個Perl編寫的模塊,可以在瀏覽器上直接實時地通過Ajax技術瀏覽和監控Apache的日誌文件。
4.負載均衡模塊
mod_backhand是一個Apache的負載平衡模塊。它定義了每個請求的HTTP重定向在一個異構的Apache伺服器群集。每個請求的處理,並貫穿了一套“候選人的職能”,以確定哪些伺服器是最適合的回應。請求然後代理到該伺服器。設施已到位,讓你寫您自己的動態載入決策演演算法。一切有關的要求和當前可用的資源可用於決策過程。
5.圖像處理模塊
mod_gfx是一個對圖像進行即時處理的Apache模塊,提供很多靈活的介面,包括:Resizing、Resampling、Watermarking、Cropping,以後還將添加如下功能:Add Text,Rotate,Draw Polygons。
6.壓縮模塊
mod-gzip-disk是一個使用磁碟進行存儲預壓縮頁面的Apache模塊,與mod-gzip不同的是不需要每次請求的時候重新壓縮。
使用方法:
gunzip -c mod_gzip_disk-0.5.tar.gz | tar -xvpf -
cd mod_gzip_disk
sudo make module
7.音樂模塊
mod_musicindex是一個Apache用來處理音頻文件的模塊,類似Perl的Apache::MP3,支持音頻格式包括:MP3,Ogg Vorbis, FLAC, or MP4 / AAC,可根據不同的音頻屬性進行排序列表、在線播放、下載、構建播放列表和搜索等,提供RSSPodcast輸出,支持多CSS和包下載。
8.LDAP認證模塊
LDAP是輕量級目錄訪問協議,基於X.500標準,但更簡單,並可根據需要進行定製。mod_psldap是Apache用來執行LDAP認證和授權的模塊。同時可通過Web界面進行簡單的LDAP管理
9.帶寬限制模塊
mod_cband是一個用來限制請求佔用帶寬的Apache模塊。
10.CGI V8引擎包
v8cgi是一個很小的C++和JS和C文件集合,允許開發者在伺服器端使用JS的模塊,基本功能包括:IO, GD, MySQL, Sockets, templates, FastCGI and Apache module。

版本介紹


2013年07月18日,Apache HTTP Server 2.4.6發布。
2013年07月12日,Apache HTTP Server 2.4.5發布。
2012年08月18日,Apache HTTP Server 2.4.3發布。
2012年08月23日,Apache HTTP Server 2.2.23發布。
2013年02月25日,Apache HTTP Server 2.4.4發布。
2013年11月25日,Apache HTTP Server 2.4.7發布。
2014年03月17日,Apache 2.4.9 GA正式發布。

操作指南


安裝

Apache的安裝無外乎兩種方式:源代碼安裝和二進位包安裝。這兩種安裝類型各有特色,二進位包安裝不需要編譯,而源代碼安裝則需要先配置編譯再安裝,二進位包安裝在一個固定的位置下,選擇固定的模塊,而源代碼安裝則可以讓你選擇安裝路徑,選擇你想要的模塊。本文主要介紹二進位DEB包安裝方式(此方法只適用於Debian GNU/Linux及其衍生版)。
系統:GNU/Linux Debian/etch
Apache當前版本:2.4.2
1、安裝:
使用以下命令安裝:
tony@tonybox:~$sudo aptitude update aptitude install apache2 apache2-utils
其中apache2-utils提供了我們在配置維護過程中非常有用的一些工具
安裝完成後,可以使用下面的命令啟動Apache服務:
tony@tonybox:~$ sudo /etc/init.d/apache2 start
停止Apache服務則是:
tony@tonybox:~$ sudo /etc/init.d/apache2 stop
也可以直接用kill命令強制殺死apache2進程
tony@tonybox:~$ sudo killall apache2
如有需要,可以通過rcconf來控制是否在系統啟動時載入Apache服務
啟動完成後打開瀏覽器,使用URL http://localhost/來訪問已經啟動的Apache伺服器,伺服器將會跳轉到 http://localhost/apache2-default/,向瀏覽器返回一個Apache安裝成功的頁面。
註:這取決於/etc/apache2/sites-available/default配置文件中,是否取消了
RedirectMatch ^/$ /apache2-default/行的註釋。
2、配置文件說明
在Debian下,安裝完成後,軟體包為我們提供的配置文件位於/etc/apache2目錄下:
tony@tonybox:/etc/apache2$ ls -l
total 72
-rw-r--r-- 1 root root 12482 2006-01-16 18:15 apache2.conf
-rw-r--r-- 1 root root 748 2006-01-16 18:05 envvars
-rw-r--r-- 1 root root 268 2006-06-30 13:56 httpd.conf
-rw-r--r-- 1 root root 12441 2006-01-16 18:15 magic
-rw-r--r-- 1 root root 10 2006-06-30 13:56 ports.conf
-rw-r--r-- 1 root root 2266 2006-01-16 18:15 README
drwxr-xr-x 2 root root 4096 2006-01-16 18:15ssl
其中apache2.conf為apache2伺服器的主配置文件,查看此配置文件,你會發現以下內容
# Include module configuration:
Include /etc/apache2/mods-enabledpublic_html設置用戶可以使用CGI等:optionsExecCGISetHandlercgi-bin#如果在全局設置了AddHandlercgi-bin.cgi。
2、虛擬主機設置:基於IP的虛擬主機若該機器的IP地址為192.168.0.2,虛擬的IP為192.168.0.3首先,在一台機器的網卡上綁定多個IP地址去服務多個虛擬主機。/sbin/ifconfigeth0:0192.168.0.2netmask255.255.255.0broadcast192.168.11.255up/sbin/routeadd-host192.168.0.2eth0:0設置../conf/httpd.conf文件:看DocumentRoot是什麼,如果為/home/httpdDocumentRoot/home/httpd/aaa創建目錄/home/httpd/aaa。基於名字的虛擬主機:編輯../conf/httpd.confNameVirtualHost192.168.0.2DocumentRoot/home/httpd/aaaServerNameaaa.yourdomain.com要有NameVirtualHost在最前面,下面依次為各個虛擬主機,還需要把aaa.yourdomain.com的DNS都指向IP地址192.168.0.23、Apache用戶認證基本的Apache用戶認證假定,對目錄/home/aaa下的文件需要做到用戶認證,在httpd.conf中加入下面的行allowoverrideauthconfigorderallow,denyallowfromall用在目錄/home/aaa下放文件.htaccess,內容如下:authname"PleasegivemeyourIDnumberandPassword"authtypebasicauthuserfile/etc/.passwdrequirevalid-user用htpasswd生成文件/etc/.passwd,htpasswd-c/etc/.passwdusername發展過程Apache起初由伊利諾伊大學香檳分校的國家超級電腦應用中心(NCSA)開發。此後,Apache被開放源代碼團體的成員不斷的發展和加強。Apache伺服器擁有牢靠可信的美譽,已用在超過半數的網際網路站中-特別是幾乎所有最熱門和訪問量最大的網站。開始,Apache只是Netscape網頁伺服器(現在是Sun ONE)之外的開放源代碼選擇。漸漸地,它開始在功能和速度超越其他的基於Unix的HTTP伺服器。1996年4月以來,Apache一直是Internet上最流行的HTTP伺服器:1999年5月它在57%的網頁伺服器上運行;到了2005年7月這個比例上升到了69%。在2005年11月的時候達到接近70%的市佔率,不過隨著擁有大量域名數量的主機域名商轉換為微軟IIS平台,Apache市佔率近年來呈現些微下滑。而Google自己的網頁伺服器平台GWS推出后,加上Lighttpd這個輕量化網頁伺服器軟體使用的網站慢慢增加,反應在整體網頁伺服器市佔率上,根據netcraft在2007年7月的最新統計數據,Apache的市佔率已經降為52.65%,8月時又滑落到50.92%。儘管如此,它仍舊是現階段網際網路市場上,市佔率最高的網頁伺服器軟體。廣的解釋是(也是最顯而易見的):這個名字來自這麼一個事實:當Apache在1995年初開發的時候,它是由當時最流行的HTTP伺服器NCSA HTTPd 1.3的代碼修改而成的,因此是“一個修補的(a patchy)”伺服器。然而在伺服器官方網站的FAQ中是這麼解釋的:“‘Apache’這個名字是為了紀念名為Apache(印地語)的美洲印第安人土著的一支,眾所周知他們擁有高超的作戰策略和無窮的耐性”。無論如何,Apache 2.x分支不包含任何NCSA的代碼。相關替代品
Apache
Apache

相關替代品


Apache是目前最流行的Web應用伺服器,佔據了網際網路應用伺服器70%以上的份額。Apache能取得如此成功並不足為奇:它免費、穩定且性能卓越;但Apache能取得如此佳績的另一個原因是,當時網際網路剛剛興起時,Apache是第一個可用的Web應用伺服器,人們沒有其他的選擇。
不可否認,Apache是一個優秀的全能Web伺服器,但對於那些需要更強大的Web應用伺服器(比如大小、可定製、響應速度、可擴展性等方面)的人而言,Apache明顯不符合他們的要求,尋找Apache的替代者是更好的選擇。
下面所列出的是當前可以替代Apache的幾個熱門Web應用伺服器,他們的特點和適用的應用場景各不相同,但都是針對Apache所不夠擅長的某一方面設計的。
1、Lighttpd
最流行的Apache伺服器替代者,Lighttpd是一個單線程的針對大量持續連接做出專門優化的Web伺服器(這正是多數高流量網站和應用程序需要的)。眾多的流行Web站點選擇Lighttpd,包括Youtube、SourceForge和維基百科。Lighttpd支持FastCGI、HTTP伺服器端壓縮、mod-rewrite和其他眾多有用的功能。儘管Lighttpd擁有Apache的絕大多數功能,但它仍然保持輕量級(僅1MB)並且可以與Apache使用相同的配置。
lighttpd
lighttpd
2、Nginx
Nginx是一個來自俄羅斯的流行的Web應用伺服器,它被應用於大量的俄羅斯的高併發站點,俄羅斯的搜索引擎網站Rambler就是基於Nginx構建的。Nginx對靜態頁面的支持相當出色,輕量且免費。Nginx不支持CGI,但是支持更靈活的FastCGI。PHP5.2及之前的版本比較多的是使用PHP-FPM來管理PHP FastCGI進程。PHP-FPM使用給PHP源碼打補丁后編譯的方式讓新手多少有些難上手,但從PHP 5.3.2開始內置PHP-FPM,只需編譯PHP時啟用PHP-FPM。
3、kangle
kangle web伺服器(簡稱:kangle)是一款跨平台、功能強大、安全穩定、易操作的高性能web伺服器和反向代理伺服器軟體。除此:kangle也是一款專為做虛擬主機研發的web伺服器。實現虛擬主機獨立進程、獨立身份運行。用戶之間安全隔離,一個用戶出問題不影響其他用戶。安全支持php、asp、asp·net、java、ruby等多種動態開發語言。
4、Boa
很多的網站管理員對在硬體配置較低的伺服器上使用輕量級的Boa作為Web伺服器極其信賴。Boa是一個單線程的HTTP伺服器,這意味著Boa只能依次完成用戶的請求而不會fork新的進程來處理併發請求。Boa的設計目的是速度和安全,對於運行於單伺服器的流行Web站點而言,Boa是一個好的選擇。
5、Jigsaw
Jigsaw是W3C推出的開源的Web伺服器平台,使用Java語言編寫,可以安裝在有Java運行環境的系統上。做為W3C(World Wide Web Consortium)開發的伺服器產品,其作用主要是對新技術的實現做一個例示,而非一個全功能的商業伺服器產品。不過就Jigsaw 2.0版本而言,它的功能還是超過了Web伺服器的平均水平。最重要的是,它體現了未來HTTP協議和基於對象的Web伺服器技術的發展。如果你希望你的平台支持所有下一代技術,Jigsaw是一個好的選擇。
以上所提到的四個Apache Web伺服器的替代者只是眾多優秀應用伺服器產品的一部分。