centos7上源码安装apche2.4

1 篇文章 0 订阅

1、首先安装一系列依赖

yum -y install gcc gcc++ zlib-devel zlib #如果报错可以试试一个一个的安装

2、下载相应的源码包(相应的源码包,我已经下载到root目录下)

    1)apr-1.5.2.tar.gz

    2)apr-util-1.5.4.tar.gz

    3)pcre-8.39.tar.gz

    4)httpd-2.4.29.tar.gz

    最好需要按照相应的顺序安装,否则可能会出错,因为他们之间可能存在依赖关系

3、安装apr

    1)首先进入相应的目录(root目录)

        cd ~

    2)解压相应的文件apr-1.5.2.tar.gz

tar -zxvf apr-1.5.2.tar.gz

    3)进入解压目录

cd apr-1.5.2

    4)测试存在的特性,设置安装路径(--prefix=***),我这里设置的安装路径为/usr/local/apr/

./configure --prefix=/usr/local/apr/

    5)编译并安装

make && make install
4、安装apr-util,我设置的路径还是/usr/local/apr-util/

    步骤同3,不过第4)设置安装路径时命令为(需要依赖apr):

./configure --prefix=/usr/local/apr-util/ --with-apr=/usr/local/apr/

5、安装pcre,我设置的路径还是/usr/local/pcre

    同3,不过在步骤4)测试存在特性时,最下面报了一个错误:


    这个时候需要再安装c++编译环境,命令:

yum -y install gcc-c++

    然后再重新进行步骤4)

6、安装apche2.4

    1)首先进入相应的目录(root目录)

        cd ~

    2)解压相应的文件httpd-2.4.29.tar.gz

tar -zxvf httpd-2.4.29.tar.gz

    3)进入解压目录

cd httpd-2.4.29

    4)测试存在的特性,设置安装路径(--prefix=***),这里我的目录安装如下:

./configure --prefix=/usr/local/server/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre

    5)编译并安装

make && make install

注意:目录没有建可能会引起安装错误,可以先建目录,我是把目录先建好了的

7、启动apahe

    1)启动停止命令

cd /usr/local/apache2/bin/
./apachectl start #开启:start 停止:stop 重启:restart

        或者:

apahce启动命令:/usr/local/server/apache2/bin/apachectl start
apahce停止命令:/usr/local/server/apache2/bin/apachectl stop
apahce重启命令:/usr/local/server/apache2/bin/apachectl restart

    2)启动报错解决

首次启动报错:AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1

        解决办法:

            进入目录:

cd /usr/local/server/apache2/conf/

            修改文件:

vim httpd.conf

            修改内容:

                    找到  #ServerName www.example.com:80 这一行,在下面添加一行代码:

ServerName localhost:80

                    就好了。

8、开机自启

    1)添加Apache自启动  

cp /usr/local/server/apache2/bin/apachectl /etc/rc.d/init.d/httpd
vim /etc/rc.d/init.d/httpd #编辑httpd文件

        在#!/bin/sh下面添加以下两句后保存

#chkconfig: 345 70 70
#description: apache

        chkconfig: 2345 70 60中的2345是指脚本的运行级别,即在2345这4种模式下都可以运行,234都是文本界面,

        5是图形界面X,70是指脚本将来的启动顺序号,如果别的程序的启动顺序号比70小(比如44、45),则脚本需要等这些程序都启动以后才启动。60是指系统关闭时,脚本的停止顺序号

    2)把Apache添加到系统服务并自启

chkconfig --add httpd #加入系统服务
chkconfig httpd on #开机自启

这样就可以使用systemctl start|stop|restart httpd 启动|关|重启Apache服务了

9、防火墙问题

     1)CentOS 7.0默认使用的是firewall作为防火墙,使用办法如下,apche默认端口是80

        >>> 关闭防火墙

systemctl stop firewalld.service             #停止firewall
systemctl disable firewalld.service        #禁止firewall开机启动
        >>> 开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
                 命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议

--permanent #永久生效,没有此参数重启后失效

        >>> 重启防火墙

firewall-cmd --reload
        >>>常用命令介绍:
firewall-cmd --state                           ##查看防火墙状态,是否是running
firewall-cmd --reload                          ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones                       ##列出支持的zone
firewall-cmd --get-services                    ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp               ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp                 ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent     ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent  ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent     ##永久添加80端口 
iptables -L -n                                 ##查看规则,这个命令是和iptables的相同的
man firewall-cmd                               ##查看帮助

            >>>查询端口号80 是否开启:

 firewall-cmd --query-port=80/tcp

            >>>永久开启80端口:

firewall-cmd --add-port=80/tcp --permanent     ##永久添加80端口
    2)如果要使用iptables,不使用firewall,可以查看这个链接
https://blog.csdn.net/qq_20565303/article/details/79754820

10、测试   

    直接访问ip,会出现成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值