Linux(CentOS)下编译安装apache

  • Centos7.6系统

  • 已经安装lnmp一键环境

  • 想装个apache跑php7 (php7的安装以及与apache的交互在这里: https://www.cnblogs.com/lz0925/p/11227128.html)

  • 要求已经安装gcc,没有的看这:yum install gcc-c++

  • 本来想整理成一键安装脚本,但现在的步骤已经够简单了,懒

  • /usr/local/src 目录,我一般用来存放源码包等各种下载的文件。

  • /usr/local 一般作为软件安装目录

        // 切换到  /usr/local/src  目录
        cd   /usr/local/src 
        // 下载需要的软件,版本自选
        wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.39.tar.gz
        wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-1.7.0.tar.gz
        wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
        wget https://jaist.dl.sourceforge.net/project/pcre/pcre/8.43/pcre-8.43.tar.gz
        // 解压
        tar -zxvf apr-1.7.0.tar.gz && tar -zxvf apr-util-1.6.1.tar.gz && tar -zxvf httpd-2.4.39.tar.gz && tar -zxvf pcre-8.43.tar.gz
        
        //依次安装上边下载的软件,只要中途没有出现 ERROR 即可
        cd apr-1.7.0
       ./configure --prefix=/usr/local/apr
       make && make install
       cd ../apr-util-1.6.1
       ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
       make && make install
       cd ../pcre-8.43
       ./configure --prefix=/usr/local/pcre --with-apr=/usr/local/apr/bin/apr-1-config
       make && make install
       cd ../httpd-2.4.39
       ./configure --prefix=/usr/local/httpd --with-pcre=/usr/local/pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
       make && make install
        
        // 这时候就安装完了, 修改监听端口88
        vim /usr/local/httpd/conf/httpd.conf
        ![](https://img2018.cnblogs.com/blog/1192213/201907/1192213-20190722170245967-840689618.jpg)
        
        // 启动一下apache试试, OK, 没问题的
        cd /usr/local/httpd/bin
        ./apachectl start    
        
        // 将链接apachectl 复制到系统启动目录下并命名为httpd
        cp /usr/local/httpd/bin/apachectl /etc/rc.d/init.d/httpd
        到此,其实已经可以使用service httpd start等命令,但在linux服务列表还没有注册,还不能使用systemctl 命令启动httpd, 我们打开刚刚复制的那个文件

        vim /etc/rc.d/init.d/httpd
        //在第二行和第三行添加如下:
        ![](https://img2018.cnblogs.com/blog/1192213/201907/1192213-20190722170805376-605736309.jpg)

        //将httpd配置开机自启动并加入linux服务监控
        chkconfig --add httpd

        //至此,apache安装完毕,可以使用 systemctl restart httpd 重启apache试一试


原文地址:https://www.cnblogs.com/lz0925/p/11227063.html