Apache HTTP服务器和支持程序 —— apachectl

apachectl是Apache超文本传输协议服务器的前端程序。 其设计意图是帮助管理员控制Apache httpd后台的功能。

apachectl脚本有两种操作模式。 首先,它可以作为简单的httpd命令的前端程序, 设置所有必要的环境变量,而后启动httpd,并传送所有的命令行参数。 其次,apachectl可以作为SysV init脚本,接受一个单词的参数,如 start, restart, and stop, 并把他们转译为适当的信号发送给httpd.

如果你的Apache安装在非标准的路径中, 你需要修改apachectl脚本使其中的路径正确地指向httpd程序。 此外,还可以指定任何必要的httpd命令行中参数。 细节可以参见脚本中的注解。

apachectl脚本如果执行成功,则返回0;如果出错,则其返回值>0 。 更多细节可以参见脚本中的注解。


概要

在扮演中间角色时, apachectl可以接受对httpd程序有效的所有参数。

apachectl [ httpd-argument ]

在SysV init模式中, apachectl只接受简单的一个单词的命令,如下:

apachectl command

 

选项

下列仅说明了SysV init类型的选项,其他参数的说明见httpd手册页。

start
启动Apache httpd后台。如果已经启动,则产生一个错误。它等价于apachectl -k start.
stop
停止Apache httpd后台。它等价于apachectl -k stop.
restart
重新启动Apache httpd后台。如果后台尚未运行,则启动后台。在重新启动后台之前,此命令会按configtest自动检查配置文件,以确保后台没有死锁。它等价于apachectl -k restart.
fullstatus
显示由mod_status提供的完整的状态报告。要使用这个功能,需要启用服务器上的mod_status,并且,系统中由一个基于文本的浏览器,如lynx。修改脚本中的STATUSURL变量,可以修改访问状态报告的URL。
status
显示一个简要的状态报告。它类似于fullstatus选项,但是,其中省略了正在处理的请求的列表。
graceful
温和地重新启动Apache httpd后台。如果后台尚未启动,则启动后台。它和标准的重新启动的不同在于,不会中断当前已经打开的连接。这意味着,如果使用了日志回卷脚本,则在处理日志之前由必要加入一个实实在在的延迟,以确保老的日志文件被关闭。在重新启动后台之前,此命令会按configtest自动检查配置文件,以确保后台没有死锁。它等价于apachectl -k graceful.
configtest
执行一个配置文件语法检查. 它解析配置文件,并报告Syntax Ok,或者是特定语法错误的详细信息。它等价于apachectl -t.

以下是附加的选项,但不推荐使用。

startssl
它等价于apachectl -k start -DSSL. 我们推荐你显式地使用此命令,或者调整httpd.conf,删除<IfDefine>段,使SSL始终有效。