Apache HTTP Server for Windows 最流行的HTTP服务器软件之一。快速、可靠、可通过简单的API扩展,Perl/Python解释器可被编译到服务器中,完全免费,完全源代码开放。最流行的Web Server发布了一个重大升级版,Apache HTTP Server 2.4的一个重要目标是大幅改进性能。新版改进了缓存、代理模块,会话控制,改进异步读写支持,等等。
Apache HTTP Server项目管理委员会和Apache基金会主席Jim Jagielski表示,他们希望终端用户能真正看到性能进步,表示Apache 2.4比许多以速度见长的Web Server更快,例如Nginx。
如果你需要创建一个每天有数百万人访问的Web服务器,Apache可能是最佳选择。这里的是Windows版本。针对主机服务商和开发人员,新版本的Apache提供了很多性能方面的提升,包括:支持更大流量,更好的支持云计算,利用更少的内存处理更多的并发等等。
除此之外,新版本的提升还包括:性能提升,内存利用,异步I/O的支持,动态反向代理设置,与时间驱动的Web服务器相当或更好的性能,更强大的处理资源分配能力,更友好的缓存支持,可定制的高速服务器和代理等。
Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自“A Patchy Server”的读音,意思是充满补丁的服务器,因为它是开源软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。
Apache HTTP Server Project并没有提供二进制的安装文件,只有源码,需要先编译的。好在官网提供了几个流行的二进制发布的方式,省的我们编译的麻烦。
这里提供的是Apache Lounge编译的VC11的版本,注意要安装VC11的运行库。
Apache HTTP Server 安装教程:
运行刚下载好的msi文件(httpd-2.2.22-win32-x86-no_ssl.msi),安装过程如下:
点击Next,继续:
上面的Network Domain、Server Name和Email Address三项内容如果是本机用于测试个人认为填什么都没有问题,但如果是真实的网络环境域名等参数是唯一的,应该如实填写,填好后点击 Next 继续:
此处选择Custom,可以自定义安装路径等,点击 Next 继续:
红框中的内容为Apache的安装路径,可以点击Change更改,其它信息默认,点击 Next 继续:
点击 Install 开始安装:
安装过程中会弹出几个CMD窗口,会自动关闭,不用管,最后:
点击 Finish 安装完成,开始运行里输入services.msc,即可看到Apache已经注册为Windows服务了:
Windows任务栏右下角也自动开启了Apache Monitor:,如果此时Apache服务没有自动启动或者启动Apache服务时弹出类似下图中的窗口:
说明Apache默认的 80 端口已被占用了。你可以关掉占用80端口的软件,也可以更改Apache的默认配置,使其监听其它端口即可。
Apache 的基本配置
打开 Apache 的安装目录,其主要配置都集中在conf文件夹下的 httpd.conf 文件中,位置如图所示:
用UltraEdit 或 Notepad++打开httpd.conf文件,从上往下阅读:
1、第35行,ServerRoot 为Apache的安装路径,这个了解就可以,不用管它;
2、第46行,Listen 80 指定了 80 为Apache的默认监听端口,这里我们改成 88,防止和其它占用80端口的软件冲突。改完后在启动Windows服务中启动它,此时可以看到没有报错窗口了。打开浏览器,地址栏中输入http://localhost:88 如果看到如下信息说明Apache已经正常安装并启动成功了:
3、第172行,ServerName 为之前安装时设置的DNS域名(如果没有域名就输入IP,记得跟上端口号),#号为注释,这里去掉#号,修改后的内容如下:
ServerName 127.0.0.1:88
修改完之后,先测试下配置是否正确:打开开始菜单-》所有程序,找到Apache HTTP Server 2.2 下的Test Configuration,并运行,如图:
如果弹出的CMD串口的内容为 Syntax OK 并一闪而过,说明配置是没有问题的;否则的话会提示出错信息并停留30后才自动关闭。
4、第179行,DocumentRoot 一般为js、css、html、png、gif、jpg等静态资源文件的存放目录,这里我们定义存放在D盘的Apache_Statics文件夹下。修改后的内容如下:
DocumentRoot "D:/Apache_Statics"
5、第193行,将 Deny from all 改成 allow from all 否则访问静态文件时页面会提示 Forbidden 禁止访问的信息。修改后的内容如下图:
6、第206行,Directory 修改成和 DocumentRoot 对应的值相同,修改后的内容如下:
<Directory "D:/Apache_Statics">
7、第219行,将 Options Indexes FollowSymLinks 注释掉,并在其下追加一行 Options None。作用和 Tomcat下的conf/web.xml中的 listings 设置成 false 一样,为了避免在浏览器中列出 服务端资源 的目录结构。
其它的功能包括:
更容易的错误分析,更灵活的设置项,更强大的验证机制,更完整的文档。关于更详细的新功能介绍,可以参考Apache的官方网站。
“我们很荣幸的宣布Apache HTTP服务器 2.4版本正式发布”。Apache项目的副主席Eric Covener宣布道。“这个版本包含了很多方面的提升,不仅添加了新的模块,同时也扩展了原有模块的性能和灵活性。相信无论是用户,网站管理者,还是开发人员都会非常欢迎的。”
Apach HTTP服务器的源码以Apache License v2.0协议发布,同时,由一支自我管理的团队负责开发和维护。