`
fei_6666
  • 浏览: 203098 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

以服务方式运行Apache for Windows

阅读更多
Apache仅能够在Windows NT上作为服务运行。

你 可以选择在安装Apache时自动将其安装为一个服务。如果你选择"for all users",那么Apache将会被安装为服务。如果你选择了"only for the Current User",你可以在安装后手动将Apache注册为服务。注意,你必须是Administrators组的成员才能成功注册服务。

使用Apache Service Monitor工具,可以查看和管理你所在网络上的所有机器上安装的Apache服务的状态。为了能够使用这个工具管理Apache服务,你必须首先自动或手动安装Apache服务。

你可以在Apache安装目录的bin子目录下,使用如下命令将Apache安装为Windows NT服务:

httpd -k install

如果你想指定服务的名称,可以使用下面的命令。当你在同一机器上安装多个Apache服务时,你必须为它们指定不同的名字。

httpd -k install -n "服务名"

如果你想为不同名称的服务使用不同的配置文件,则安装时需要指定配置文件:

httpd -k install -n "服务名" -f "c:\files\my.conf"

如果你使用的是第一个命令,也就是除 -k install 外没有其它命令行参数,那么被安装的服务名称将是:Apache2.2 ,配置文件将使用conf\httpd.conf 。

要移除一个Apache服务很简单:

httpd -k uninstall

或者使用下述命令移除特定名称的Apache服务:

httpd -k uninstall -n "服务名"

通常,启动、重启、关闭Apache服务的方法是使用Apache Service Monitor工具,另外也可以使用控制台命令:NET START Apache2.2 和 NET STOP Apache2.2 或者通过Windows服务控制面板。在启动Apache服务之前,你应当使用下面的命令检查一下配置文件的正确性:

httpd -n "服务名" -t

你可以通过命令行开关来控制Apache服务。要启动一个已经安装的Apache服务,可以使用:

httpd -k start

要停止一个已经安装的Apache服务,可以使用:

httpd -k stop



httpd -k shutdown

要重启一个运行中的Apache服务,强制它重新读取配置文件,可以使用:

httpd -k restart

默认情况下,Apache服务将被注册为以本地系统用户(LocalSystem帐号)身份运行。LocalSystem帐号没有网络权限,不能通过任何Windows安全机制访问网络,包括文件系统、命名管道、DCOM或secure RPC ,但是它对于本地资源却拥有广泛的特权。
永远不要把网络权限授予LocalSystem帐号!如果你需要Apache能够访问网络资源,最好按照下述方法为Apache另外建立一个单独的帐号。

你应该建立一个单独的帐号来运行Apache服务。特别是在必须通过Apache访问网络资源的时候,我们更加强烈建议你这样做。

   1. 创建一个普通域用户帐号,并牢记对应的密码。
   2. 授予这个新建的帐号作为服务登陆和作为操作系统一部分运行权限。在Windows 2000/XP/2003上你可以使用"组策略"或通过"本地安全策略"的MMC接口来完成这个操作。
   3. 确认新建的帐号是Users组的一个成员。
   4. 确认新建的帐号具有读取和执行(RX)所有文档和脚本目录(例如:htdocs和cgi-bin)的权限。
   5. 确认新建的帐号对Apache的logs目录具有读/写/删除(RWD)的权限。
   6. 确认新建的帐号对httpd.exe二进制文件具有读取和执行(RX)的权限。

一个很好的实践经验是赋予运行Apache服务的用户读取和执行(RX)整个Apache2.2目录的权限,并且对logs子目录具有读/写/删除(RWD)的权限。

如果你允许使用这个帐号作为一个用户和服务登录,你就可以用这个帐号登录上去测试执行脚本、读取web页的权限,还可以通过控制台窗口启动Apache 。如果这样工作正常,你又执行了上述的操作,那么Apache就能够正常地作为服务运行了。
错误代码2186是一个很好的提示,说明你需要检查"登陆为"选项,因为服务器不能访问必要的网络资源。

当启动Apache服务时你可能会遇到一个来自Windows服务管理器的错误信息。 例如,如果你想使用控制面板中的服务小程序启动Apache,可能会得到下面这条信息:

Could not start the Apache2.2 service on \\COMPUTER
Error 1067; The process terminated unexpectedly.

只要启动Apache出错你就会得到这个错误信息。为了弄清是什么引起了错误, 你应该遵循作为控制台程序运行Apache中的建议。

对于让Apache在Windows 9x下以类似Windows NT服务的方式运行有一些支持。都是高度试验性的,即使能够工作,Apache软件基金会将不会证实其可靠性和未来的支持。继续进行你自己的冒险吧!

这两种"服务"有相当大的区别:

如果你输入下列命令,Apache会尝试启动,如果成功他将在后台运行:

httpd -n "服务名" -k start

例如,通过桌面的快捷方式运行,如果服务启动成功一个控制台窗口会快速闪过并立刻消失。如果启动时Apache检测到比如httpd.conf文件中有不正确的设置这样的问题,则控制台窗口会保持可见。这样将显示一个有助于追踪错误原因的错误信息。

Windows 9x不支持NET START或者NET STOP命令,因此你在命令中必须使用Apache的服务控制选项。你可能希望为每个命令设置一个快捷方式以便你能够只需要从开始菜单或者桌面一点就能执行所需的操作。

Apache 和Windows 9x没有提供让Apache服务以特定的具有网络权限的用户身份运行的支持。实际上,Windows 9x在本地机器上根本没有提供安全性。这就是Apache软件基金会从不支持使用Windows 9x作为公用httpd服务器的原因。这个便利存在的唯一目的是协助用户开发web内容和学习Apache服务器,或者也许在一个安全的、私有的网络上充当intranet服务器。
分享到:
评论

相关推荐

    Apache2.2 for Windows

    Apache2.2 for Windows 无安装后不能运行情况; 无35行代码出错情况; 完美安装包,一键安装!

    Windows 配置Apache以便在浏览器中运行Python script的CGI模式

    后来发现了一篇文章Running Python as CGI in Apache in Windows ,讲述以CGI模式代替mod_python来运行python script。还有这篇Python for Windows 。 做法是: 打开httpd.conf,找到”#ScriptInterpreterSource ...

    Apache FtpServer 1.0.6

    此外,FtpServer还可以作为Windows服务器、Unix / Linux后台程序或是被嵌入在Java应用程序而独立运行。有了MINA(Multipurpose Infrastructure for Network Applications)支持,FtpServer可以轻而易举满足大量的...

    Memcached For PHP Windows版 带Memcache扩展和安装使用说明

    -u 以的身份运行 (仅在以root运行的时候有效) -m 最大内存使用,单位MB。默认64MB -M 内存耗尽时返回错误,而不是删除项 -c 最大同时连接数,默认是1024 -f 块大小增长因子,默认是1.25 -n 最小分配空间,key+value+...

    【x64】ApacheService-2.4.37-vc14

    【x64】ApacheService-2.4.37for Windows (1)打开D:\Apache24\conf下httpd.conf 文件,用记事本打开编辑作如下修改并保存。 第37行ServerRoot "c:/Apache24"改为ServerRoot “D:/Apache24”;//Apache程序的位置。...

    java论坛一键搭建Easyjsprun! v6.0.1 GBK For windows 110530.zip

    中的 MySQL 使用 3308 端口启动服务以避免与您计算机中运行的 MySQL 产生冲突。 1. JspRun! 相关帐户说明 ---------------------- 论坛管理员初始账户:admin 论坛管理员初始密码:admin MySQL root 用户...

    Docker for windows10

    Docker 是 PaaS 提供商 dotCloud 开源的一个基于 LXC 的高级容器引擎,源代码托管在 Github 上, 基于go语言并遵从Apache2.0协议开源。 Docker自2013年以来非常火热,无论是从 github 上的代码活跃度,还是Redhat在...

    tomcat6 for windows

    tomcat6 binary 版;... 下载文件后, 解压到任意目录, 进入到文件夹 apache-tomcat-6.0.0\bin 下, 双击 startup.bat, 即可运行tomcat; 测试方法: 在浏览器中输入 localhost:8080, 出现tomcat 主页面表示安装成功

    APMServ-v5.2.6 For WinNT Win2k WinXP Win2003

     ActivePerl 5.8.8.819 for Windows 下载地址:[华军软件园] [中国站长站]  注意事项:  迅雷、Skype、PPLive、BT等软件启动后默认会占用80端口,导致Apache无法启动。解决方法:先关闭这些软件,启动完APMServ...

    PHP v4.4.2 for win32

    PHP是一种新型的CGI程序编写语言,易学易用,运行速度快,可以方便快捷地编写出功能强大,运行速度快,并可同时运行于Windows、Unix、Linux 平台的Web后台程序,内置了对文件上传、密码认证、Cookies 操作、邮件收发...

    MAMP Pro for Mac 5.0.1.zip

    MAMP Pro for mac是Mac OS平台搭建本地服务器环境的组合软件套装,包含 Macintosh、Apache、MySQL和PHP 四大开发环境。 安装使用教程视频 Mac系统:MAMP Pro开发工具的安装与配置 MAMP Pro for Mac ...

    《APMServ 5.2.6》:一键快速搭建Apache+PHP+MySQL+Nginx+Memcached+ASP平台的绿色软件

     ActivePerl 5.8.8.819 for Windows 下载地址:[华军软件园] [中国站长站]  注意事项:  迅雷、Skype、PPLive、BT等软件启动后默认会占用80端口,导致Apache无法启动。解决方法:先关闭这些软件,启动完APMServ...

    java论坛一键搭建Easyjsprun! v6.0.1 UFT-8 For windows 110530.zip

    中的 MySQL 使用 3308 端口启动服务以避免与您计算机中运行的 MySQL 产生冲突。 1. JspRun! 相关帐户说明 ---------------------- 论坛管理员初始账户:admin 论坛管理员初始密码:admin MySQL root 用户...

    LSP 防火墙for windows mobile

    把两个filter文件夹里的dll文件放在根目录下,运行程序就可以了

    windows下Apache+MySql+PHP3+PHP4+PERL安装配置

    OS : Microsoft Windows 2000 Professional简体中文版  WEB SERVER: Apache 1.3.12 for WIN32  MYSQL : MySQL Shareware 3.22.34 for ...1. 运行 apache_1_3_12_win32.exe ,按照提示安装,安装目

    Tomcat4.x Windows社区程序

    运行平台: Liunx + JDK + Apache + Tomcat + MYSQL 或 Windows2000(WindowsNT、Windows98) + JDK + Apache + Tomcat + MYSQL 软件开发环境采用 RedHat Linux 7.0 JDK1.3 For Linux ...

    InstantRails v2.0 for windows.zip

    InstantRails,一个All In One的套件,可以帮助你快速搭建Ruby On Rails开发环境。... InstantRails自带了apachet和mysql,软件解压即可使用,如果已经在本机运行了apache和mysql,需要更改端口才能便之并存。

Global site tag (gtag.js) - Google Analytics