一 Apache介绍
官方网站:http://httpd.apache.org/
Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中
Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定等(静态小文件),并可做代理服务器来使用。
1. Apache的特点及应用场合。
Apache的特点功能强大、简单、速度快、应用广泛、性能靠靠稳定,并可做代理服务器或负载均衡器来使用。
Apache的应用场合。
使用Apache运行静态HTML网页、图片(处理静态小文件能力不如Nginx)。
使用Apache结合PHP引擎运行PHP、Perl等程序,LAMP被成为经典组合。
使用Apache结合Tomcat/Resin运行JSP、JAVA等程序,成为中小企业的首选。
使用Apache做代理、负载均衡、rewrite规则过滤等等。
二 安装
1. 检查系统默认的Apache或RPM包安装的Apache版本,卸载掉并安装最新的稳定版。
rpm -aq httpd
rpm -e --nodeps httpd
yum install -y zlib zlib-devel openssl-devel
2.安装wget
yum -y install wget
3.安装Apache前,需要安装依赖包apr apr-devel apr-util-devel gcc gcc-c++
yum -y install apr apr-devel apr-util-devel gcc gcc-c++ pcre pcre-devel
4.下载httpd,解压
wget http://archive.apache.org/dist/httpd/httpd-2.4.41.tar.gz
tar zxf httpd-2.4.41.tar.gz
5.预编译Apache
cd httpd-2.4.41
./configure --prefix=/usr/local/apache --enable-rewrite --enable-so
说明:--prefix 为指定的安装路径。
编译、安装Apache
[[[email protected] httpd-2.4.41]# make &&make install
6.隐藏版本号
在主配文件httpd-conf 中打开httpd-default.conf
[[email protected] httpd-2.4.41]# vim /usr/local/apache/conf/httpd.conf
输入向上搜索 /httpd-default.conf
httpd-defaul.conf 中设置
[[email protected] httpd-2.4.41]# vim /usr/local/apache/conf/extra/httpd-default.conf
输入向上搜索 /ServerTokens
ServerTokens Prod
ServerSignature Off
7.检查语法错误,启动apache服务
[[email protected] ~]# /usr/local/apache/bin/apachectl -t
[[email protected] ~]# /usr/local/apache/bin/apachectl start
[[email protected] ~]# /usr/local/apache/bin/apachectl graceful 平滑重启
start步骤启动时提示错误
解决办法
编辑配置文件,修改
#ServerName www.example.com:80为ServerName 127.0.0.1:80或ServerName localhost:80或ServerName 主机名:80。也可以不用修改,其实服务已经启动
[[email protected] ~]# vim /usr/local/apache/conf/httpd.conf
重启后在浏览器中输入访问
8.查看端口和进程
[[email protected] ~]# netstat -lntup |grep httpd
[[email protected] ~]# ps -ef |grep httpd
9.查看日志
[[email protected] ~]tail -f /usr/local/apache/logs/access_log
10.重要的配置文件
源码包安装Apache默认发布目录为:/usr/local/apache/htdocs/目录下
11.Apache虚拟主机配置有3种方法:基于IP配置、基于域名配置和基于端口配置,这里介绍基于域名配置。
(1) 在主配文件中开启httpd-vhost.conf
[[email protected] ~]# vim /usr/local/apache/conf/httpd.conf
向下搜索 ?Virtual hosts
(2)创建发布目录
[[email protected] conf]# mkdir /usr/local/apache/conf/{abc.com,bcd.com,vhosts}
(3)在httpd-vhost.conf 文件中配置虚拟机主机站点目录
添加
<Directory "/usr/local/apache/conf/abc.com">
AllowOverride All
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</Directory>
(4)客户端配置 host C:\Windows\System32\drivers\etc
(5)编辑测试文件
[[email protected] conf]# cd abc.com
[[email protected] abc.com]# echo 'this is www.abc.com' > index.html
[[email protected] abc.com]# cd ../
[[email protected] conf]# cd bcd.com/
[[email protected] bcd.com]# echo 'this is www.bcd.com' > index.html
(6)编辑主配文件修改站点目录 vim /usr/local/apache/conf/httpd.conf