Apache是使用范围最广的Web服务器工具套件,这里我们将详细介绍如何在RedHatLinux9.0环境里安装、启动和配置Apache服务器。 1.安装Apache服务器 在安装RedHatLinux9.0时,会提示是否安装Apache服务器。如果不能确定是否已经安装,可以在终端命令窗口输入以下命令: [roo
Apache是使用范围最广的Web服务器工具套件,这里我们将详细介绍如何在Red Hat Linux 9.0环境里安装、启动和配置Apache服务器。
1.安装Apache服务器
在安装Red Hat Linux 9.0时,会提示是否安装Apache服务器。如果不能确定是否已经安装,可以在终端命令窗口输入以下命令:
[root@ahpeng root] rpm -qa | grep httpd
如果结果显示为“httpd-2.0.40-21”,则说明系统已经安装Apache服务器。
如果安装Red Hat Linux 9.0时没有选择Apache服务器,则可以在图形环境下单击“主菜单→系统设置→添加删除应用程序”菜单项,在出现的“软件包管理”对话框里确保选中“万维网服务器”选项,然后单击“更新”按钮,按照屏幕提示插入安装光盘即可开始安装。
另外,你也可以直接插入第1张安装光盘,定位到/RedHat/RPMS下的httpd-2.0.40-21.i386.rpm安装包,然后在终端命令窗口运行以下命令即可开始安装进程:
[root@ahpeng RPMS] rpm -ivh httpd-2.0.40-21.i386.rpm
安装好Apache服务器,可以在终端命令窗口运行以下命令来启动Apache服务:
[root@ahpeng root] /etc/rc.d/init.d/httpd start
重新启动Apache服务:
[root@ahpeng root] /etc/rc.d/init.d/httpd restart
关闭Apache服务:
[root@ahpeng root] /etc/rc.d/init.d/httpd stop
确认Apache服务已经启动后,我们可以在Web浏览器里输入以下地址,如果可以看到默认的Apache首页,则说明Apache服务器工作正常。
Htpp://WebServerAddress
此处的WebServerAddress指代Web服务器的IP地址或者域名。即是说WebServerAddress应该用实际的Web服务器的IP地址或者域名来代替。
2.配置httpd.conf文件
在早期Apache服务器版本里,其配置内容分散在httpd.conf、srm.conf、access.conf三个文件里。而新版本的Apache服务器,则统一在httpd.conf里进行配置。对于默认安装的Red Hat Linux来说,该配置文件位于/etc/httpd/conf目录下,如果安装的是tar.gz版本,则该文件位于/usr/local/apache/conf目录。
利用httpd.conf,我们可以对Apache服务器进行全局配置、主要或预设服务器的参数定义、虚拟主机的设置。httpd.conf是一个文本文件,我们可以用Vi、Kate等文本编辑工具进行修改。通过分析该httpd.conf配置文件,我们不难发现:
该配置文件分为若干个小节,例如Section 1: Global Environment(第一小节:全局环境);Section 2: 'Main' server configuration(第二小节:主服务器配置)等。
每个小节都有若干个配置参数,其表达形式为“配置参数名称 具体值”,每个配置参数都有详尽的英文解释(用#号引导每一个注释行)。
为了帮助大家理解,这里给出httpd.conf的最常用配置参数:
(1)DocumentRoot
该参数指定Apache服务器存放网页的路径,默认所有要求提供HTTP服务的连接,都以这个目录为主目录。以下为Apache的默认值:
DocumentRoot "/var/www/html"
(2)MaxClients
该参数限制Apache所能提供服务的最高数值,即同一时间连接的数目不能超过这个数值。一旦连接数目达到这个限制,Apache服务器则不再为别的连接提供服务,以免系统性能大幅度下降。本例假设最大连接数是150个:
MaxClients 150
(3)Port
该参数用来指定Apache服务器的监听端口。一般来说,标准的HTTP服务默认端口号是80,一般不要更改这个数值。本例为80端口:
Port 80
(4)ServerName
该参数使得用户可以自行设置主机名,以取代安装Apache服务器主机的真实名字。此名字必须是已经在DNS服务器上注册的主机名。如果当前主机没有已注册的名字,也可以指定IP地址。本例将服务器名设为Peter.vicp.net:
ServerName Peter.vicp.net
(5)MaxKeepAliveRequests
当使用保持连接(Persistent Connection)功能时,可以使用本参数决定每次连接所能发出的要求数目的上限。如果此数值为0,则表示没有限制。建议尽可能使用较高的数值,以充分发挥Apache的高性能,本例设置每次连接所能发出的要求数目上限为100:
MaxKeepAliveRequests 100
(6)MaxRequestsPerChild
该参数限制每个子进程(Child Process)在结束前所能处理的请求数目,一旦达到该数目,这个子进程就会被中止,以避免长时间占据Apache(或者Apache服务器所采用的函数库),防止造成内存或者其他系统资源的超负荷。
需要注意的是,该参数的数值并不包括保持连接所发出的请求数目。举例说明,如果某个子进程负责某一个请求,该请求随后带来保持连接功能所需的10个请求,这时候对于该参数而言,Apache服务器会认为这个子进程只处理了1个要求,而非11个要求。
以下设置最多可以处理10个要求:
MaxRequestsPerChild 10
(7)MaxSpareServers 和MinSpareServers
提供Web服务的HTTP守护进程,其数目会随连接的数目而变动。Apache服务器采用动态调整的方法,维持足够的HTTP守护进程数目,以处理目前的负载,也就是同时保持一定的空闲HTTP守护进程来等候新的连接请求。