|
|
|
||||||||||||||
|
|
|
Apache HTTP服务器 2.0版本 ![]() 在Microsoft Windows中使用Apache此文档解释了如何在Microsoft Windows平台上安装、配置和运行Apache 2.0。 如果你发现了bug,或者希望以其他方式作出贡献, 请使用我们的bug报告页面。 本文档的大多数内容假定你是从一个二进制发布版安装Apache到Windows上。 如果你想自己编译Apache(可能有助于开发和跟踪bugs),参看编译Windows下的Apache。 现在,对Windows 9x的支持是不完善的。 当前Apache 2.0并不期望在Windows 9x平台上运行。 如果你有兴趣在那方面给于帮助,请看开发者站点上的如何加入主题的信息。 将来可能会因为某些原因提供这方面的支持, 我们欢迎提供使Apache能够运行在Windows 9x上的补丁。 本文档使用到的缩写及其意义解释包括:
对操作系统的要求Apache 2.0被设计为在Windows NT 4.0和Windows 2000上运行。 它的二进制安装程序只能在x86族的处理器上运行,比如Intel芯片。 Apache可能也能够运行在Windows 9x上,但是并没有经过测试, 也不建议在实际工作的系统上这样使用。 任何情况下都必须确保TCP/IP网络协议已经安装。 如果在Windows 95上运行,必须安装"Winsock2"升级补丁。 "Winsock2" for Windows 95可以在 这里下载。 如果在NT 4.0上运行,建议安装Service Pack 6, 因为Service Pack 4有众所周知的TCP/IP和Winsock完整性的问题, 在以后的Service Pack中解决了这些问题。 下载 Apache for Windows关于Apache最新版本的有关信息可以在位于http://httpd.apache.org/ 的Apache web服务器上找到。那里会列出当前发行版本、 所有最近的alpha和beta测试发行版本以及镜像web站点和匿名ftp服务器的信息。 你应该下载带有 安装 Apache for WindowsApache的安装需要有Microsoft Installer 1.2或更高版本。 在Windows 9x中,你可以从这里 升级Microsoft Installer到2.0,在Windows NT 4.0和2000中,2.0的升级版在这里. Windows XP不需要这个升级。 注意,使用这个安装包不能在同一个机器上安装两套Apache 2.0。 但是,在同一个机器上,安装一个1.3系列和一个2.0系列的Apache则没有问题。 如果你需要在同一个机器上安装两套不同的2.0版本, 则必须用代码编译和安装Apache. 运行已下载的上述Apache
安装期间,Apache将会配置你所选择安装目录下的 而且,如果你已经有一个名为 安装Apache以后,要求你应该编辑 配置 Apache for WindowsApache使用 Apache for Windows主要的不同点是:
以服务方式运行Apache for Windows用于指定服务名的
-n选项只在Apache 1.3.7 及以后的版本中可用。
早期版本只支持缺省服务名"Apache"。你可以像下面这样将Apache安装为Windows NT服务:
要安装一个使用特定配置的服务,安装时指定配置文件:
要移除一个Apache服务,使用:
如果没有指定服务名,缺省地,将使用"Apache"。 一旦服务被安装,你可以使用 测试一个服务的配置文件:
启动一个使用某服务配置文件的控制台Apache:
关于服务依存关系的重要提示:对于Apache发行版1.3.13更早的版本,成功运行已安装服务所要求的依存关系并没有配置。 安装了一个早期版本Apache的服务以后, 你还必须做以下工作:
如果你从第三方模块、ISAPI或者其他像ActiveState Perl那样的附加脚本技术使用了COM或者DCOM,你可能还需要在DependOnService列表中加入Rpcss条目。为了避免不必要地暴露TCP端口135,Apache安装时没有创建那个条目。如上述步骤在找到或是创建数值名称DependOnService,双击它并加入Rpcss条目到列表。 运行Apache服务的用户帐号(NT/2000)当Apache第一次被安装为服务(例如使用 本地系统账号是一个很有特权的本地账号,因此你不应该用它运行任何共享软件应用程序。
但是,它没有网络权限,不能通过任何NT安全机制离开本地机器,包括文件系统、命名管道、DCOM或secure RPC。
永远不要把网络权限授予SYSTEM账号!创建一个新的用户帐号来代替它, 给这个用户授予合适的权限,并使用"Log On As:"选项。选择开始菜单 -> 设置 -> 控制面板 -> 服务 -> apache服务 ...并点击"启动服务"来访问该设置 一个运行在本地系统账号背景中的服务继承了SCM(服务控制管理器)的安全背景,与任何已登录账号都没有关联,也没有用于验证的任何证书(域名、用户名和密码)。
SYSTEM账号没有网络权限,因此对于服务一个Apache的共享安装实例或者共享页都是不可见的。如果你打算使用任何网络资源,下面的步骤应该有所帮助:
如果你允许使用这个帐号登录为一个用户,你就可以自己登录上去测试执行脚本、读取web页的权限,还可以用控制台窗口启动Apache。如果这样工作正常,你又执行了上述的操作,那么Apache就能够正常地作为服务运行了。 错误代码2186是一个很好的提示,说明你需要检查"log On As"选项,因为服务器不能访问必要的网络资源。
Apache for Windows作为服务运行的故障分析当启动Apache为服务的时候你可能会遇到一个来自Windows服务管理器的错误信息。 例如,如果你想使用控制面板中的服务小程序启动Apache,可能会得到下面这条信息:
启动Apache时一出现问题你就会得到这个错误信息。为了弄清是什么引起了错误, 你应该遵循从命令行运行Running Apache for Windows中的建议。 还有,如果Apache作为服务运行,Apache 1.3.13 目前在Windows NT/2000下把启动错误记录在应用程序事件日志里。 运行事件察看器并选择应用程序日志检查相应纪录。 即使没有错误信息弹出警告你发生了错误,也应该用事件查看器检查应用程序日志以防有错误发生。
从命令行运行Apache要了解从命令行控制Apache服务的细节,请参照控制台命令行部分。 控制服务方式的Apache可以以服务方式安装并运行Apache的多个实例。像下面这样启动、重启及关闭/停止Apache服务:
对于缺省的"Apache"服务,选项 注意
-k shutdown的别名-k stop只是到了1.3.13版本才被引入。
早期版本的Apache只认识-k shutdown选项。先于1.3.3版本的Apache不认识任何-k选项!此外,你可以使用NT本机命令
同样,引号只是在服务名含有空格时才是必需的。 高度试验性的Windows 95/98 服务只有Apache 1.3.13 及以后版本才有Windows 95 and 98 下的服务选项。早期版本的Apache在Windows 95/98 下只支持控制台窗口方式运行。
对于让Apache在Windows 95/98 下以类似Windows NT/2000服务的方式运行有一些支持。都是高度试验性的, 即使能够工作,Apache软件基金会将不会证实其可靠性和未来的支持。继续进行你自己的冒险吧! 一旦你确认Apache在命令行提示符下正确工作,你就可以像在Windows NT/2000版本下那样用同样的命令安装、控制和卸载Apache服务。 但是,其中有相当大的区别你需要注意: 如果你输入下列命令,Apache会尝试启动,如果成功他将在后台运行:
例如,通过桌面的快捷方式运行,如果服务启动成功一个控制台窗口会快速闪过并立刻消失。
如果启动时Apache检测到比如 Windows 95/98 不支持 Apache和Windows 95/98 没有提供让Apache服务以特定的具有网络权限的用户身份运行的支持。 实际上,Windows 95/98 在本地机器上根本没有提供安全性。这就是Apache软件基金会从不支持使用Windows 95/98 作为公用httpd服务器的原因。这个便利存在的唯一目的是协助用户开发web内容和学习Apache服务器,或者也许在一个安全的、私有的网络上充当intranet服务器。 安装的测试启动Apache运行以后(不管是控制台窗口还是作为服务),
它会在80端口上进行监听(除非你改变了配置文件中的
应该出现一个欢迎页面作为应答,并且页面上有到Apache用户手册的链接。
如果什么都没有发生或是得到了一个错误,检查
一旦你的基本配置可以工作了,你应该编辑 因为Apache 不能 与其他TCP/IP应用程序共享同一个端口, 你可能需要先停止或者卸载某些特定的服务。这包括(但不限于) 别的web服务器和BlackIce那样的防火墙。如果你只能在禁止其他服务的情况下启动Apache, 那么需要重新配置Apache或者其他程序使它们不监听同一个TCP/IP端口。 |
| 自动支持 1024x768 和 800x600 最佳页面显示效果, 请使用IE4.0以上浏览器浏览本站
| |||||||||||
|