编译安装apache

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编译安装apache相关的知识,希望对你有一定的参考价值。

实验准备

  1. 实验环境:Red Hat Enterprise 6.5
  2. 软件包:apr、apr-util、httpd
    • 备注:apache官网下载http://www.apache.org/将实验所需的软件包下载好,并解压到指定文件夹

      实验开始

      首先将解压好的apr和apr-util复制到指定文件夹

      cp -R  cp -R apr /opt/httpd-2.4.2/srclib/apr
      cp -R  apr-util /opt/httpd-2.4.2/srclib/apr-util

      技术分享图片
      安装编译环境(利用yum仓库安装,需要提前建好yum仓库,如何创建yum仓库在我以前的文章中有介绍)

      yum install gcc gcc-c++ make pcre pcre-devel -y

      编译安装apache

      首先进行安装前的配置

      ./configure --prefix=/usr/local/apache \         //安装路径
      --enable-so \                              //使用动态模块加载
      --enable-rewrite \                       //重写
      --enable-mods-shared=most \    //启用模块
      --with-mpm=worker \                  //使用多处理模块
      --disable-cgid \                          //开启通用网关接口
      --disable-cgi

      技术分享图片
      安装

      make           //编译(转换成二进制语言)
      make install   //编译安装

      服务优化

      为了方便管理,我们要将httpd服务添加到系统启动项
      我们用一条命令对脚本文件进行过滤,然后再加入到/etc/init.d 文件夹内。这时的脚本文件还不完整,我们还需对其进行额外的修改。

      grep -v "#" /usr/local/apache/bin/apachectl > /etc/init.d/httpd

      利用vim编辑器对文件进行修改,在首行插入以下内容

      vim /etc/init.d/httpd 
      #!/bin/sh
      # chkconfig:2345 85 15
      # description:Apache is a World Wide Web server

      技术分享图片
      现在这个文件还不具有执行权限,我们需要对其进行提权操作

      chmod +x /etc/init.d/httpd

      添加httpd服务

      chkconfig --add httpd

      设置端口在字符界面和图形化界面自启

      chkconfig --level 35 httpd on

      查看服务端口信息

      chkconfig --list httpd

      为了方便我们对apache的管理,我们可以将httpd.conf文件建立一个软连接到/etc目录下

      ln -s /usr/local/apache/conf/httpd.conf /etc/httpd.conf

      编辑配置文件httpd.conf
      技术分享图片
      技术分享图片
      开启服务

      service httpd start

      查看服务是否成功开启

      netstat -ntap | grep 80

      实现宿主机访问

      技术分享图片

以上是关于编译安装apache的主要内容,如果未能解决你的问题,请参考以下文章

Linux中如何从源代码编译安装程序

Linux源代码编译安装程序

Android 逆向Android 逆向通用工具开发 ( Android 平台运行的 cmd 程序类型 | Android 平台运行的 cmd 程序编译选项 | 编译 cmd 可执行程序 )(代码片段

apache的安装配置启用

是否可以动态编译和执行 C# 代码片段?

Apache手工编译安装(内附软件包)