linux 安装apache源码

环境介绍:

    系统环境:CentOS7

 安装需要gcc库 yum install -y gcc gcc-c++

    所需软件包:apr-1.6.2.tar.gz、apr-util-1.6.0.tar.gz、httpd-2.4.27.tar.gz 、pcre-8.35

    注意:官方网站提示apr/arp-util版本要1.4(含)版本以上。

    依赖包:zlib-devel

    # yum install zlib-devel

    开发环境包组:Development Tools, Server Platform Development

    # yum groupinstall "Development Tools" "ServerPlatform Development" -y

 

 

1、查询旧版apache包名并卸载。

    rpm -q httpd  查询

    rpm -e --nodeps ttpd-2.2.15-59.el6.centos.x86_64  删除

    或使用如下shell脚本批量删除旧版apache软件包

    for name in `rpm -qa httpd*`;do rpm -e --nodeps $name;done

 

  进入htpd目录

  执行:   rpm -ivh httpd  安装


 

2、下载源码包

    wget https://mirrors.aliyun.com/apache/apr/apr-1.5.2.tar.gz

    wget https://mirrors.aliyun.com/apache/apr/apr-util-1.5.4.tar.gz

    wget https://mirrors.aliyun.com/apache/httpd/httpd-2.2.32.tar.gz

   

  http://archive.apache.org/dist/apr/apr-1.5.1.tar.gz
  http://archive.apache.org/dist/apr/apr-util-1.5.1.tar.gz 
  http://jaist.dl.sourceforge.NET/project/pcre/pcre/8.35/pcre-8.35.tar.gz

  

3、解压

    tar -xvf apr-1.5.2.tar.gz

    tar -xf apr-util-1.5.4.tar.gz

    tar -xvf httpd-2.2.32.tar.gz

 

4、编译安装apr-1.5.2

    cd apr-1.5.2

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

    make

    make install

 

 

5、编译安装apr-util-1.5.4

    cd apr-util-1.5.4

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

    make

    make install

 

 

6、编译安装httpd-2.2.32

    cd httpd-2.2.32

    ./configure --prefix=/usr/local/apache2 --sysconfdir=/usr/local/apache2/etc/httpd/ --enable-so --enable-deflate --enable-headers --enable-rewrite --with-mpm=prefork --with-apr=/usr/local/apr-httpd/ --with-apr-util=/usr/local/apr-util-httpd/ --with-pcre=/usr/local/pcre

    

    --prefix:安装路径;

    --sysconfdir:指定配置文件路径

    --enable-so:DSO兼容,DSO=Dynamic Shared Object,动态共享对象,可实现模块动态生效;

    --enable-deflate:支持压缩功能;需要zlib-devel包支持;

    --enable-headers:提供允许对HTTP请求头的控制;

    --enable-rewrite:提供基于URL规则的重写功能;

    --with-mpm:设置默认启用的MPM模式,{prefork|worker|event};

    --with-apr:apr安装路径;

    --with-apr-util:apr-util安装的路径;

    --with-pcre:pcre安装目录;

    make

    make install


 

    卸载源代码包:

    删除源代码所安装位置: rm -rf /usr/local/apache2

    重新安装:删除源代码解压文件然后在进行安装;

      


 

7、设置二进制命令PATH环境变量

    编辑文件/etc/profile.d/NAME.sh,输入export PATH=/PATH/TO/BIN:$PATH

        vim /etc/profile.d/httpd.sh

        export PATH=/usr/local/apache/bin:$PATH

        . /etc/profile.d/httpd.sh 

    注意:bin路径的放在前面系统在读取配置文件的时候会按照自左向右的顺序读取


 

   PATH变量设置;

    1.。查看:export  或 echo $PATH;

    2.修改profile文件  所有用户可用 

      vi /etc/profile    

      export PATH="$PATH:安装目录"  

      让环境变量立即生效需要执行如下命令:  

      source /etc/profile

    3. 修改.bashrc文件:  

      # vi /root/.bashrc  

      在里面加入:  

      export PATH="$PATH:/opt/au1200_rm/build_tools/bin"


 

8、创建链接头文件

    ln -sv /usr/local/apache/include/ /usr/include/httpd

    "/usr/include/httpd" -> “/usr/local/apache/include/"

 

9、设置MANPATH

    在/etc/man.config文件中新增MANPATH指令,并指向新的命令手册路径;

        vim /etc/man.config

        MANPATH /usr/local/apache/man

 

10、启动httpd-2.2.32服务

    apachectl start  

    启动后提示:AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this messag

    解决方法:vi /usr/local/apache2/etc/httpd/httpd.conf    

      修改:ServeRoot:localhost:80

 

11、查看80端口是否被监听

    ss -tnl

 

12、使用浏览器访问测试   一定要关闭firewall防火墙:(详见防火墙设置)


 

apache安装目录在:

cd /usr/local/apache2

网页目录;

cd /usr/local /apache2/htdocs


 设置开机启动:

echo "/usr/local/apache2/bin/apachectl start">>/etc/rc.local  假如启动文件rc.local;

cat /etc/rc.local  查看


加入系统服务:

  vi /etc/init.d/httpd

  #chkconfig 35 85 15  三个数分别代表运行级别、开机启动顺序、关机顺序

添加服务:

  chkconfig --add httpd

查看添加:

  chkconfig |grep httpd

开启apache开机启动

  chkconfig httpd on

 

posted @ 2017-05-21 17:44  web男  阅读(346)  评论(0编辑  收藏  举报