- LAMP网站开发黄金组合Linux+Apache+MySQL+PHP
- 杨明华等编著
- 1960字
- 2020-08-26 19:07:31
3.2 Apache的获取和安装
本节开始介绍Apache的获取和安装过程,用户可以到网上下载Apache的安装手册,安装手册将逐步地引导读者完成从Apache源码下载到源码编译的整个过程。
3.2.1 Apache获取及其最新信息
用户可以到Apache的官方网站下载Apache的安装程序。同时Apache是自由软件,用户还可以下载所有源程序。Apache的官方网站是http://www.apache.org,下载网址为:http://apache.freelamp.com/httpd/。到目前为止,Apache最新测试版本为2.2,流行的版本为2.0.54。http://httpd.apache.org/docs-2.1/new_features_2_2.html给出了2.2版本的许多新特性。Apache提供了不同平台的版本。在UNIX平台和与UNIX兼容平台Linux下的软件包文件名为httpd-2.0.54.tar.gz和httpd-2.0.54.tar.bz2两种,分别是对应gz压缩格式和bz2压缩格式的源代码包。在Apache的官方网站上还可以直接下载Windows平台的源代码包httpd-2.0.54-win32-src.zip和二进制可执行文件apache_2.0.54-win32-x86-no_ssl.msi。这里假设用户下载是Linux版本的软件包httpd-2.0.54.tar.gz或httpd-2.0.54.tar.bz2。在Red Hat Linux 9安装盘里还提供了Apache的RPM安装包。下面几节将分别详细讲述基于这三种软件包的Apache的安装过程。
3.2.2 用httpd-2.0.54.tar.gz软件包安装Apache
假设用户将下载下来的httpd-2.0.54.tar.gz软件包放在/tmp目录下。
1.对该软件包进行解压缩和解包
在用httpd-2.0.54.tar.gz软件包安装Apache之前,首先需要对该软件包进行解压缩和解包。用以下命令完成软件包的解压缩和解包:
//对软件包进行解压缩和解包处理 #cd /tmp //首先改变当前目录为软件包所在目录 #ll //显示当前目录下所有文件 -rwx------ 1 root root 7508193 6月 23 21:08 httpd-2.0.54.tar.gz #tar xvfz httpd-2.0.54.tar.gz //对软件包解压缩和解包 //再显示当前目录下所有文件,可以发现已经解压缩解包成功,多了一个目录 # ll 总用量 7352 drwxr-xr-x 11 1000 1000 4096 6月 23 21:09 httpd-2.0.54 -rwx------ 1 root root 7508193 6月 23 21:08 httpd-2.0.54.tar.gz
2.运行源代码目录下的configure命令
解压缩后,进入源代码的目录httpd-2.0.54,并使用配置脚本进行环境的设置。相应的命令为:
#cd httpd-2.0.54 //改变当前目录为httpd-2.0.54目录 #./configure //执行该目录下配置脚本程序 checking for chosen layout... Apache checking for working mkdir -p... yes checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu Configuring Apache Portable Runtime library ... checking for APR... reconfig configuring package in srclib/apr now checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu ...
3.编译源代码
在执行./configure之后,配置脚本会自动生成Makefile。如果在设置的过程中没有任何的错误,就可以开始编译源代码了。相应的命令及其显示结果如下:
#make /tmp/share/httpd-2.0.54/srclib/apr/libtool --silent --mode=compile gcc -g -O2 -pthread -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -DAP_HAVE_DESIGNATED_INITIALIZER -I/tmp/share/httpd-2.0.54/srclib/apr/include -I/tmp/share/httpd-2.0.54/srclib/apr-util/include -I. -I/tmp/share/httpd-2.0.54/os/UNIX -I/tmp/share/httpd-2.0.54/server/mpm/prefork -I/tmp/share/httpd-2.0.54/modules/http -I/tmp/share/httpd-2.0.54/modules/filters -I/tmp/share/httpd-2.0.54/modules/proxy -I/tmp/share/httpd-2.0.54/include -I/tmp/share/httpd-2.0.54/modules/generators -I/tmp/share/httpd-2.0.54/modules/dav/main -prefer-non-pic -static -c request.c && touch request.lo ...
4.用make install命令安装
在源代码编译完成后,就可以使用make install安装Apache至默认的目录/usr/local/apache下。安装过程终端显示结果如下:
# make install Making install in srclib make[1]: Entering directory '/tmp/share/httpd-2.0.54/srclib' Making install in apr make[2]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr' sed 's,^\(location=\).*$,\1installed,' < apr-config > apr-config.out Making all in strings make[3]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr/strings' make[4]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr/strings' make[4]: Nothing to be done for 'local-all'. make[4]: Leaving directory '/tmp/share/httpd-2.0.54/srclib/apr/strings' make[3]: Leaving directory '/tmp/share/httpd-2.0.54/srclib/apr/strings' Making all in passwd make[3]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr/passwd' make[4]: Entering directory '/tmp/share/httpd-2.0.54/srclib/apr/passwd' make[4]: Nothing to be done for 'local-all'. ...
这样,基于gzip软件包的Apache安装就全部完成了,用户就可以使用如下命令启动Apache服务器了:
//将当前目录改为Apache的默认安装路径 #cd /usr/local/apache/bin //启动Apache #./apachectl start.
3.2.3 用httpd-2.0.54.tar.bz2软件包安装Apache
用httpd-2.0.54.tar.bz2软件包安装Apache与上面介绍的使用httpd-2.0.54.tar.gz软件包安装Apache的方法类似。假设用户将下载下来的httpd-2.0.54.tar.bz2软件包放在/tmp目录下。
1.对该软件包进行解压缩和解包
用httpd-2.0.54.tar.bz2软件包安装Apache之前,同样需要对该软件包进行解压缩和解包。bzip2压缩格式软件包的解压缩与gzip格式稍微有点区别。用以下命令完成软件包的解压缩和解包处理:
//对软件包进行解压缩和解包处理 #cd /tmp //首先改变当前目录为软件包所在目录 #ll //显示当前目录下所有文件 -rwx------ 1 root root 7508193 6月 23 21:08 httpd-2.0.54.tar.bz2 #bunzip2 httpd-2.0.54.tar.bz2 //对软件包解压缩 //再显示当前目录下所有文件,可以发现已经解压缩解包成功, //当前目录下多了一个tar文件 # ll -rwx------ 1 root root 8508193 6月 23 21:08 httpd-2.0.54.tar //将tar文件解包 #tar xvf httpd-2.0.54.tar
2.运行源代码目录下的configure命令
解压缩后,进入源代码的目录httpd-2.0.54,并使用配置脚本进行环境的设置。相应的命令为:
#cd httpd-2.0.54 //改变当前目录为httpd-2.0.54目录 #./configure //执行该目录下配置脚本程序
3.编译源代码
在执行./configure之后,配置脚本会自动生成Makefile。如果在设置的过程中没有任何的错误,就可以开始编译源代码了。编译也是使用make命令。
4.用make install安装
编译完成后就可以用make install命令实际安装Apache了。安装的过程与上一小节的相似,这里不再赘述。
3.2.4 用RPM软件包安装Apache
Apache的RPM软件包既可以在Red Hat Linux 9安装光盘上找到,也可以在Red Hat的FTP服务器上找到。在Red Hat Linux 9光盘中,其文件名为httpd-2.0.40-21.i386.rpm,执行如下命令即可完成Apache的安装:
#rpm -ivh httpd-2.0.40-21.i386.rpm
ApacheRPM将把文件安装在如下的目录中:
● ./etc/httpd/conf:这一目录包含Apache的所有配置文件,包括access.conf、httpd.conf和srm.conf。
● ./etc/rc.d/:位于这一目录下的目录树包含系统的启动脚本。ApacheRPM在这里安装了Web服务器的整套脚本,这些脚本可用来从命令行启动和停止服务器,并且也可在工作站关闭、启动或重新引导时自动启动或停止服务器。
● ./home/httpd:RPM在这一目录安装默认的服务器图标、CGI脚本和HTML文件。如果想在其他地方保存Web内容,通过在服务器的配置文件适当的地方进行更改可以实现。
● ./usr/doc和/usr/man:RPM包含手册页和readme文件,它们被放在这些目录中。像大多数RPM软件包一样,readme文件以及其他相关的文档放在/usr/doc下的一个以服务器软件包的版本命名的目录中。
● ./usr/sbin:可执行程序放在这一目录中。包括服务器程序本身,还有各种工具,如用于创建验证口令文件的htpasswd程序。
● ./var/log/http:服务器日志文件存放于该目录。在默认情况下,有两个日志文件—access_log和error_log,但是可以定义任意多个包含各种信息的自定义日志文件。
★ 注意 ★
如果要升级Apache到更新的版本,RPM不会覆盖当前的配置文件。RPM将当前文件名后添加.rpmnew的后缀。例如,srm.conf变为srm.conf.rpmnew。