Linux 系统下安装apache
安装apache详解:
注意apache在linux中的名字是httpd
首先检查是否已经安装apache
rpm -qa |grep httpd
一、下载包:
安装apache(2.4)服务器: apache安装之前,需要安装APR、APR-Util和PCRE依赖包,因为apache是依赖于它们的。
下载Apache服务器源码包:httpd-2.4.9.tar.gz。因为httpd的底层构建是 APR(apache portable runtime) APR-util 以及 pcre,所以需要先安装这些才能开始安装 httpd。
wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.9.tar.gz
wget http://mirror.bit.edu.cn/apache/apr/apr-1.5.1.tar.gz
wget http://mirror.bit.edu.cn/apache/apr/apr-util-1.5.3.tar.gz
然后到 pcre.org 下载pcre源码包:
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.35.tar.gz
二、解压安装(顺序):
安装 APR
tar -xf apr-1.5.1.tar.gz
cd apr-1.5.1.tar.gz
mkdir -p /usr/local/apr
./configure --prefix=/usr/local/apr
make && make install
安装 APR-util
tar -xf apr-util-1.5.3.tar.gz
cd apt-util-1.5.3
mkdir /usr/local/apr-util
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
安装pcre
tar -xf pcre-8.35
mkdir /usr/local/pcre
./configure --prefix=/usr/local/pcre
make && make install
安装apache
cd ../http-2.4.9
./configure --prefix=/usr/local/apache --enable-modes-shared=all --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make && make install
三、测试
Apache就算安装结束了,启动httpd测试一下:
/usr/local/apache/bin/apachectl -k start
源码安装方法
安装httpd的软件依赖包
yum install -y apr-devel apr-util-devel openssl-devel libevent-devel pcre-devel
解压安装
tar -zxvf httpd-2.4.27.tar.gz
cd httpd-2.4.18
./configure --prefix=/usr/local/apache24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork --with-zlib --with-pcre --with-apr=/usr --with-apr-util=/usr
如果报错 make clean:
清除编译产生临时文件
make && make install
编译说明:
–prefix 指明程序安装目录 --enable-so 表示启用模块的动态装卸载功能
--enable-ssl 表示启用ssl功能,此项可能需要先安装openssl-devel包
--enable-cgi 表示启用支持cgi机制的功能 --enable-rewrite 表示支持url重写功能
--enable-modules=most 表示启用的http模块有哪些,most表示启动大多数
--enable-mpms-shared=all 表示以共享方式启用哪些MPM模块(prefork、worker、event), all表示所有的,此项为httpd2.4独有的选项,因为只有2.4才支持MPM的动态装卸载,2.2的MPM为静态的,只有编译进去,才能使用
--with-mpm=prefork 表示默认启动的MPM是哪种
--with-zlib 表示依赖zlib,用于支持压缩功能 没用=等号指明zlib的路径,则系统会自动到被依赖的文件的默认的路径去寻找, 如果被依赖的文件不是rpm安装,或不放在默认路径下,则需要手动利用=等号指明路径
--with-pcre 表示依赖的pcre,用于支持url重写时支持正则表达式 --with-apr 依赖的apr
--with-apr-util 依赖的apr-util
【注】
这里需要填写依赖的软件包的安装位置,yum安装是基于rpm进行安装的,因此我们可以使用命令(rpm -ql 软件全名)进行查看软件安装在哪里。一般来说,yum安装大多数都安装在usr目录中。
yum安装方法
yum方式安装apache
yum -y install httpd
//检查是否有安装apache
rpm -qa |grep httpd
开启停止重启apache服务
service httpd start | stop | restart
//检查是否已经启动apache服务
ps -A|grep httpd
CentOS7用的是Firewall-cmd,CentOS7之前用的是iptables防火墙;要想让外网能访问到apache主目录,就需要做以下的操作:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
命令含义:
--zone #作用域
--add-service=http #添加服务;也可以添加端口
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
访问外网ip