Apache HTTP Server(简称Apache)是Apache软体基金会的一个开放源码的网页伺服器软体,可以在大多数电脑作业系统中运行。由于其跨平台和安全性,被广泛利用,是最盛行的Web伺服器软体之一。它快速、可靠并且可通过大略的API扩充,将Perl/Python等直译器编译到伺服器中。
历史
Apache起初由伊利诺大学喷鼻香槟分校的国家超级电脑运用中央(NCSA)开拓。此后,Apache Httpd被开放原始码团体的成员不断的发展和加强。Apache Http网站伺服器拥有牢固可信的美誉,已经在环球超过半数的网站中被利用-特殊是险些所有最热门和浏览量最大的网站。
刚开始发展时,Apache只是Netscape网页伺服器(现在是Sun ONE(英语: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的市占率就随之滑落。
根据Netcraft(英语:Netcraft)在2009年12月的最新统计数据,Apache的市占率已经降为53.67%,IIS降为18.26%,谷歌网页伺服器13.53%,nginx 8.75%。只管如此,Apache及其各种分支版本仍旧是当前网际网路市场上,市占率最高的网页伺服器软体。
命名
作者流传宣传由于Apache这个名字好记,以是才在最初选择它,但是流传最广的阐明是(也是最显而易见的):这个名字来自于一个事实:当Apache在1995年初开拓的时候,它是由当时最盛行的HTTP做事器NCSA HTTPd 1.3的代码修正而成的,因此是“一个修补的(a patchy)”做事器。然而,在Apache做事器官方网站的FAQ中是这么阐明的:“Apache这个名字是为了纪念名为Apache的美洲原住民印第安人的一支,众所周知他们拥有高超的作战策略和无穷的耐性。”贝伦多夫说:“我选择阿帕奇这个名字是取其积极含义。阿帕奇族是末了一个屈从于美国政府的民族。当时我们担心大公司迟早会参与竞争并‘教养’这块最早的网络之地,以是在我看来,阿帕奇是个很好的名称,也有人说这个词一语双关-由于正如Apache(与\"大众a patchy\公众谐音)的名字所表明的那样,他们确实是在给做事器打补丁。”无论如何,Apache 2.x分支不包含任何NCSA的程序代码。
特性
Apache增援许多特性,大部分通过编译的模块实现。这些特性从伺服器真个程式措辞增援到身份认证方案。一些通用的措辞接口支持Perl,Python,Tcl, 和PHP。盛行的认证模块包括mod_access,mod_auth和mod_digest。其他的例子有SSL和TLS支持(mod_ssl),代理做事器(proxy)模块,很有用的URL重写(由mod_rewrite实现),定制日志文件(mod_log_config),以及过滤支持(mod_include和mod_ext_filter)。Apache日志可以通过网页浏览器利用免费的脚本AWStats或Visitors来进行剖析。
2.x版本
Apache的2.x版本核心在Apache 1.x版本之上作出了主要的加强。这包括:多实行绪,更好的增援非UNIX平台(例如Windows),MPM,新的Apache API,以及IPv6增援。
评价
《PC Magazine(英语:PC Magazine)》2004年8月评出了近30年以来的10款最佳软体产品。他们个中或者是有过最辉煌的历史,或者是最具创意。其对Apache的评价是:第三名:Apache(1995年推出),目前已经演化成了“LAMP”,即Linux、Apache、MySQL和PHP的联合体。这是一个开放原始码软体项目,已经对微软的“.NET”计策构成严重威胁。尤其是Apache网路伺服器,让用户充分体验到开放原始码软体的稳定性、可靠性和可定制性。
Apple.com评价Apache时说:Apache是伺服器软体始终不断进化的大型元件,它免费但又是代价令媛。Apache是在开源运动中涌现的绝对珍品,由于不属于个人专利而是对公共免费。一旦拥有这些原始码,程序员能够自由完成所想——能在其它程式员接替事情时被授予同样的权限来改变和修正自己的原始码。