调用 Apache
在 Unix 系统中, httpd 应用程序通常是作为一个持续运行的守侯进程来处理请求的.可以使用 Internet daemon inetd 来调用 Apache 并每次将 HTTP 作为服务来创建连接. (使用ServerType来指示) 然而这并不被推荐使用.
在 Windows 系统中, Apache 通常是作为 Windows NT 的一个服务来运行, 或者也可以作为一个控制台应用程序在 Windows 95 上运行. 另见在 Windows 平台运行 Apache.
命令行选项
以下的选项是有关 httpd 服务的命令行参数:
-d 服务器的根路径
为ServerRoot variable to serverroot设置初始值. 它也可以被配置文件中 ServerRoot 命令的初始值替代. 在 Unix 系统中缺省的目录是 /usr/local/apache, 在 Windows 平台是/apache 在OS/2平台是/os2httpd.
-D 名称
定义一个名称IfDefine directives. 这个选项可以被用来在配置文件中随时启用确定的功能, 或者为几个独立主机使用一个被付上的主机特殊信息<IfDefine> 段落.
-f 配置
在启动时执行命令配置. 如果配置中不是以/符号开始的, 它将代表是ServerRoot的子目录. 缺省是conf/httpd.conf.
-C "指示"
发出一个指示给 Apache 服务器(它是配置文件的一部分) 在实际读取规则配置文件之前.
-C "指示"
发出一个指示给 apache 服务器在读取配置文件之后.
-X
以单处理器方式运行, 只为了内部调试目的; 这个守侯进程不能通过任何子进程产生.不用 这种模式提供普通 WWW 服务.
-v
输出 httpd 版本和时间之后退出.
-V
显示 httpd的版本, 它的发行时间, 编译时间设置和(其他然后结束, -DUSE_MMAP_FILES).
-L
输出指令列表并显示那些有效然后退出.(Apache 1.3.4 及以后版本. 以前版本使用 -l).
-l
列出编译在 Server 中的模块列表然后离开. (Apache 1.3.4 及以后版本. 早期版本使用 -h).
输出指令列表并显示那些有效然后退出. (从 Apache 1.2 到 1.3.3. 以前版本使用 -L).
-h
显示出 httpd 选项列表然后退出. (Apache 1.3.4 及以后版本. 早期版本使用 -? ).
列出编译在 Server 中的模块列表然后离开. (直到 Apache 1.3.3. 以后版本使用 -l).
-S
为分析配置文件的目的显示设置 (当前只显示崩溃的虚拟主机设置), 但不会启动服务器. (直到 Apache 1.3.3, 这个选项也可以启动服务器).
-t
测试配置文件语法 (既读所有配置文件并解释) 但不启动服务器. 如果配置文件包含错误, 将显示错误信息并带着一个非零参数返回, 否则将显示 "语法正确" 并返回一个零参数.
-k 选项
仅为 Windows 平台使用: 标记 Apache 重新启动或关闭. 选项 是 "关闭" 或 "重新启动" 之一. (Apache 1.3.3 和以后版本).
-?
显示出 httpd 选项列表然后退出. (直到 Apache 1.3.3,以后版本使用 -h).
配置文件
服务器为配置指令将读三个文件. 任何指令将可能出现在它们的任一个中. 它们的名称与服务器的根目录有关; 这被ServerRoot设置, -d 命令行标记, 或 (仅当 windows 平台的注册表) (请参见在 Windows 平台运行 Apache). 这些文件是:
conf/httpd.conf
包含服务守侯进程的控制指令. 文件名可以不顾-f命令行标记.
conf/srm.conf
包含服务器提供给客户端的特殊文档控制指令.文件名可以不顾ResourceConfig指令.
conf/access.conf
包含存取文档的控制指令. 文件名可以不顾 AccessConfig的指令.
然而, 一般不需要这样.
服务器也读取包含 mime 文档类型; 文件名被TypesConfig 指令设置,缺省是conf/mime.types.
日志文件
安全警告
可以在 Apache 存取日志文件和 UID 文件的目录里有写权限的往往是 Root 用户.不用给其他用户有写日志目录的权限; 请参见安全提示文档.
pid 文件
启动时, Apache 保存父进程的 ID 在一个文件中logs/httpd.pid. 文件名可以被PidFile指令改变. 这个进程 ID 是为管理员重新启动和终止守侯进程时使用的: 在 Unix 平台, HUP 或 USR1 信号可以让守侯进程重新读取它的配置文件并终止它; 在 Windows 平台可以使用 -k 命令. 想得到更多信息请参见停止和重新启动页.
如果进程不正常的终止 (或被结束), 将需要结束子进程.
错误日志
服务器将保存错误消息在一个日志文件中, 缺省是 Unix 平台logs/error_log Windows 或 OS/2 平台logs/error.log. 文件名将被ErrorLog指令设置; 不同的错误日志可以被不同的 虚拟主机设置.
传输日志
服务器将每一个请求记录成标准日志, 缺省在 Unix 平台是logs/access_log windows 和 OS/2 平台是logs/access.log. 文件名可以使用TransferLog指令配置或被 CustomLog 指令创建的日志文件; 不同的传输文件可以使用不同的虚拟主机来配置.