准备安装包:
apache安装之前,需要安装APR、APR-Util和PCRE依赖包,因为apache是依赖于它们的。具体下载地址如下
APR和APR-Util:http://apr.apache.org/download.cgi
PCRE:http://www.pcre.org/
apache的下载地址为:
http://httpd.apache.org/download.cgi
笔者下载的版本具体为,apache(httpd-2.4.10.tar.gz), apr(apr-1.5.1.tar.gz), apr-util(apr-util-1.5.4.tar.gz), pcre(pcre-8.36.tar.gz)。
Linux下Apache HTTP Server 2.4.26的安装
1.下载apr-1.5.2.tar.gz、apr-util-1.5.4.tar.gz、pcre-8.37.tar.gz、httpd-2.4.26.tar.gz
2.将apr-1.5.2.tar.gz、apr-util-1.5.4.tar.gz、pcre-8.37.tar.gz、httpd-2.4.26.tar.gz解压到/usr/local/目录下
tar -zxvf apr-1.5.2.tar.gz -C /usr/local/
tar -zxvf apr-util-1.5.4.tar.gz -C /usr/local/
tar -zxvf pcre-8.37.tar.gz -C /usr/local/
tar -zxvf httpd-2.4.26.tar.gz -C /usr/local/
3.将apr与apr-util移动到指定目录(httpd-2.4.26/srclib/)下并安装编辑器
mv apr-1.5.2 httpd-2.4.26/srclib/apr
mv apr-util-1.5.4 httpd-2.4.26/srclib/apr-util
yum install gcc gcc-c++
4.到pcre-8.37目录下配置并安装pcre
./configure --prefix=/usr/local/pcre
make
make install
5.1 安装expat库
yum install expat-devel
5.2 到http-2.4.26目录下配置并安装httpd
./configure --prefix=/usr/local/apache --with-included-apr --with-pcre=/usr/local/pcre
make
make install
成功后:
安装完成后,生成目录如下
6.修改httpd.conf,启动apache
vi conf/httpd.conf +/ServerName
如果出现端口号被占用则修改 listen端口号:
vi conf/httpd.conf +/Listen
bin/apachectl start
启动命令:/usr/local/apache/bin/apachectl start (可用)
7.直接http://192.168.145.128/访问肯定是访问不了,因为防火墙没有开放80端口。可以验证如下,因为ping 192.168.145.128 能通,但是telnet 192.168.145.128 80却不通。可以直接关闭防火墙,或者允许80端口通过防火墙
(1)开启端口
CentOS升级到7之后,发现无法使用iptables控制Linuxs的端口,baidu之后发现Centos 7使用firewalld代替了原来的iptables。下面记录如何使用firewalld开放Linux端口:
开启端口
[root@centos7 ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent
查询端口号80 是否开启:
[root@centos7 ~]# firewall-cmd --query-port=80/tcp
重启防火墙:
[root@centos7 ~]# firewall-cmd --reload
查询有哪些端口是开启的:
[root@centos7 ~]# firewall-cmd --list-port
命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
(2)关闭firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动