前言
扯上两句:Apache固然是一款功能强大的Web服务器,作为老司机,一直具有相当高的市场占有率。 虽然在高并发性能上不如Nginx,但是因为入道早,所以有着完善的功能、非常出色的稳定性等优点。
当然也有很多网站使用LANMP组合,Nginx处理静态请求,Apache+PHP处理动态请求,从而利用各自的特点,实现了访问的动静分离。今天天色已晚,就只说说Apache的安装和使用
一丶下载Apache
可以去官网 http://httpd.apache.org/ 下载自己所需要的版本,需要注意的是有些版本需要依赖 apr 和 apr-util 官网也可以下载http://apr.apache.org/download.cgi 也可以使用以下路径下载
[root@localhost ~]#
wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.38.tar.gz
[root@localhost ~]#wget http://mirrors.shu.edu.cn/apache//apr/apr-1.6.5.tar.gz
[root@localhost ~]#wget http://mirrors.shu.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
如果 wget 命令没找到 用 yum install wget 进行添加
[root@localhost ~]#
yum -y install wget
最好创建一个目录,把下载的资源移动到目录当中,这样便于以后扩展
使用 mkdir 命令可以创建目录
[root@localhost ~]#
mkdir lnmp
把下载的文件 使用 mv 命令剪切移动到 lnmp 目录当中,可以使用以下快捷方法
[root@localhost ~]#
mv *tar.gz lnmp
使用 tar zxvf 命令对压缩包进行解压
[root@localhost ~]#
tar zxvf httpd-2.4.38.tar.gz
[root@localhost ~]#tar zxvf apr-1.6.5.tar.gz
[root@localhost ~]#tar zxvf apr-util-1.6.1.tar.gz
把 apr-1.6.5 和 apr-util-1.6.1 两个依赖目录移动到 httpd-2.4.38 指定的 srclib 目录当中
[root@localhost ~]#
mv apr-1.6.5 httpd-2.4.38/srclib/apr
[root@localhost ~]#mv apr-util-1.6.1 httpd-2.4.38/srclib/apr-util
二丶安装Apache
安装依赖命令
[root@localhost ~]#
yum -y install gcc gcc-c++ expat-deve
l
[root@localhost ~]#yum -y install pcre-devel openssl-devel
进入 httpd-2.4.38 目录进行编译安装
--prefix
程序安装位置 默认:/usr/local/apache2--enable-so
开启DSO,动态共享对象,后面添加模块用--enable-deflate
开启支持压缩--enable-ssl
开启ssl支持--enable-rewrite
开启重写支持
[root@localhost ~]#
cd httpd-2.4.38
[root@localhost ~]#./configure --enable-so --enable-deflate --enable-ssl --enable-rewrite
[root@localhost httpd-2.4.38]#make && make install
进入安装目录,需要注意的是有些版本的目录名有可能不是apache2而是httpd
[root@localhost httpd-2.4.38]#
cd /usr/local/apache2
三丶查看Apache是否安装
启动Apache
[root@localhost apache2]#
/usr/local/apache2/bin/apachectl start
初次启动会报错
解决方案,找到 apache 安装后的主配置文件 httpd.conf 编辑 httpd.conf 文件
[root@localhost apache2]#
vim /usr/local/apache2/conf/httpd.conf
用:/ 搜索 #ServerName,添加 ServerName localhost:80 ,再重新启动 Apache 即可
[root@localhost apache2]#
/usr/local/apache2/bin/apachectl restart
注意你是CentOS7版本,默认防火墙是firewalld.添加80端口如下:
(–permanent永久生效,没有此参数重启后失效)
[root@localhost ~]#
firewall-cmd --zone=public --add-port=80/tcp --permanent
[root@localhost ~]#firewall-cmd --reload
查看 apache 是否启动使用 ps aux | grep httpd 命令
[root@localhost ~]#
ps aux | grep httpd