目录:
Apache简介
安装Apache HTTP Server软件
配置文件解析
应用案例
Apache简介
Apache HTTP Server项目是在Windows与Unix等平台上都可以运行的跨平台开源HTTP服务器软件,该项目的目标是提供安全、高效、可扩展的HTTP服务。Apache httpd自从1996年发布以来,如今已经成为世界排名第一的Web服务器软件。Apache httpd最新的稳定版本为2.4.4。安装Apache httpd软件可以选择源码安装或二进制包安装,但由于源码安装是可以定制的一种安装方式,这种安装方式灵活性比较大,可以满足企业对这种环境的不同需求。二进制包安装在CentOS 6.3系统中可以选择RPM包安装,这种安装的最大好处就是简单快捷。本书采用的是源码安装软件包,由于源码安装需要大量的依赖包,需要先安装这些依赖软件包。
Apache HTTP Sever非常重要的特性是她采用了模块化设计模型,Apache模块分为静态模块与动态模块,静态模块是Apache最基本的模块,是无法随时添加与卸载的模块,静态模块在编译软件时设定。动态模块是可以随时添加删除的模块,这样的设计使得企业部署Apache时可以获得最大的灵活性,每个企业都可以根据自己的平台以及实际需求,安装使用不同的模块功能。Apache模块将被编译为动态共享对象(DSOs),这些动态共享对象独立于httpd程序,DSO模块可以在编译Apache是添加,也可以后期随时通过Apache Extension Tool(apxs)工具编译添加模块。Apache HTTP Server软件安装完成后可以使用httpd –M查看模块加载清单。
安装Apache软件
1. 下载软件包
[root@centos6 ~]# wget
[root@centos6 ~]# wget
[root@centos6 ~]# wget
2. 安装软件
[root@centos6 ~]# yum –y install gcc autoconf automake make \
> pcre pcre-devel openssl openssl-devel
[root@centos6 ~]# tar –xzf httpd-2.4.4.tar.gz –C /usr/src/
[root@centos6 ~]# tar –xzf apr-1.4.6.tar.gz –C /usr/src/
[root@centos6 ~]# tar –xzf apr-util-1.5.2.tar.gz –C /usr/src/
[root@centos6 ~]# cd /usr/src/apr-1.4.6/
[root@centos6 apr-1.4.6]# ./configure --with-apr=/usr/local/apr/
[root@centos6 apr-1.4.6]# make && make install
[root@centos6 apr-1.4.6]# cd /usr/src/apr-util-1.5.2/
[root@centos6 apr-util-1.5.2]# ./configure --with-apr=/usr/local/apr/
[root@centos6 apr-util-1.5.2]# make && make install
[root@centos6 apr-util-1.5.2]# cd /usr/src/httpd-2.4.4/
[root@centos6 httpd-2.4.4]# ./configure –prefix=/usr/local/apache2 –enable-so \
> --enable-ssl --enable-rewrite –with-mpm=worker –with-suexec-bin \
>--with-apr=/usr/local/apr/
[root@centos6 httpd-2.4.4]# make && make install
configure脚本用来检查系统环境、查找依赖文件、设置安装路径等操作,configure拥有很多参数,读者可以通过./configure --help查看该脚本支持的所有参数。
下面是configure常用参数说明:
参数 描述
--prefix 指定Apache httpd程序的安装主目录
--enable-so 开启模块化功能,支持DSO(动态共享对象)
--enable-ssl 支持SSL加密
--enable-rewrite 支持地址重写
--with-mpm 设置Apache httpd工作模式
--with-suexec-bin 支持SUID、SGID
--with-apr 指定apr程序绝对路径
3. 启动服务
[root@centos6 ~]# /usr/local/apache2/bin/apachectl start
[root@centos6 ~]# netstat -ntulp |grep http
[root@centos6 ~]# iptables -I INPUT -p tcp -dport 80 -j ACCEPT
安装完成后Apache会提供名为apachectl启动脚本,该脚本提供了Apache httpd的启动、关闭以及测试功能,没有修改配置文件的情况下使用start启动httpd程序,可能会返回错误提示:”Could not reliably determine the server’s fully qualified domain name”,提示说明httpd无法确定服务器域名称,可以修改主配置文件的ServerName项来解决。该提示也可以忽略,通过netstat命令查看httpd已经启动成功。
在客户端使用浏览器访问该Web服务器,看到”IT works!”说明服务器可以被正常访问了。
apachectl具体参数如下:
参数 描述
start 启动httpd程序,如果已经启动过该程序则报错
stop 关闭httpd程序
restart 重启httpd程序
graceful 启动httpd,不中断现有的连接
graceful-stop 关闭httpd,不中断现有的连接
status 查看httpd程序当前状态
configtest 检查httpd主配置文件语法