• 安装Apache2.4 操作系统:Centos7.4


    正式安装Apache2.4 操作系统:Centos7.4,(需要关闭Selinux)
    1.在每安装一个服务都要养成查看是否安装,如果安装则需要卸载:

    #[root@yankerp ~]# rpm -qa | grep httpd

    以下是如果之前系统已经安装httpd卸载方法:

    2.安装apache2.4.23 (是编译安装那么就会需要用到源码包)在安装apache2.4.23需要的源码包如下:
    httpd-2.4.23.tar.gz      apr-1.5.2.tar.gz      apr-util-1.5.4.tar.gz      zlib-1.2.8.tar.gz      pcre-8.39.tar.gz
    以上包中apr是可移植的运行库,它是一个对操作系统调用的抽象库,用来实现apache内部组件对系统的使用,提高系统的可移植性,pcre zlib想必大家都很了解,这里不在概述。

    1)下载安装apr和apr-util 在安装之前这些包我已经下载好了,同时大家可以使用以下链接来进行下载
    apr官网地址http://apr.apache.org/download.cgi

    #[root@yankerp ~]# wget http://mirrors.hust.edu.cn/apache//apr/apr-1.5.2.tar.gz

    安装:

    1.  
      # tar zxf apr-1.5.2.tar.gz
    2.  
      [root@yankerp ~]# cd apr-1.5.2/
    3.  
      [root@yankerp apr-1.5.2]# ./configure --prefix=/usr/local/apr && make && make install


    如果出现了以上情况,需要安装gcc编译器。。。

    # yum install gcc gcc-c++ -y


    再次安装:

    安装结束后使用echo $?来判断以上操作是否又报错,非0则不成功,若没有继续安装下一个包



    2)安装apr-util(安装的方法和上边安装apr都是一样的) 最后make && make install

    # wget http://mirrors.hust.edu.cn/apache//apr/apr-util-1.5.4.tar.gz



    2.安装zlib
    zlib官网:http://www.zlib.net/

    1.  
      # wget http://www.zlib.net/fossils/zlib-1.2.8.tar.gz
    2.  
      tar zxf zlib-1.2.8.tar.gz
    3.  
      [root@yankerp ~]# cd zlib-1.2.8/
    4.  
      [root@yankerp zlib-1.2.8]# ./configure --prefix=/usr/local/zlib && make && make install



    3.安装pcre
    pcre官网:https://ftp.pcre.org/

    # wget https://ftp.pcre.org/pub/pcre/pcre-8.39.tar.gz


    4.安装openssl(在安装apache2.4中它会提示openssl版本过于低,所以需要安装openssl)
    openssl官网:https://www.openssl.org/

    #wget https://www.openssl.org/source/old/1.0.1/openssl-1.0.1u.tar.gz

    make && make install


    安装完的调整

    1.  
      #mv /usr/bin/openssl /usr/bin/openssl.1.0.1e
    2.  
      [root@yankerp openssl-1.0.1u]# ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl


    5.以上操作都是为apache2.4准备的,接下来正式安装apache2.4

    1.  
      #tar zxf httpd-2.4.23.tar.gz
    2.  
      cd httpd-2.4.23/

    make && make install
    参数解释:
    ./configure --prefix=/usr/local/http-2.4.23      //指定apache的安装路径
    --enable-so  //这个是支持动态共享模块
    --enable-rewrite  //支持URL重写
    --enable-ssl   //支持ssl
    --with-ssl=/usr/local/openssl  //这个是指定openssl的安装位置
    --enable-cgi   //启用cgi
    --enable-modules=most 指明要静态编译到httpd二进制文件的模块 all或者most,all代表包含所有的模块 most代表大部分的模块
    --enable-mods-shared=most 指明要以DSO方式编译的模块,all代表全部,most代表大部分
    --enable-mpms-shared=all  启用MPM所有支持的模式,这样event,worker,prefork就会以模块化的方式安装,要用哪个就在httpd.conf里面配置就好了
    --with-mpm=event   指定启用mpm模式,默认使用enevt模式,在apache的早期版本2.0默认prefork,2.2版本是worker 2.4版本是event.
    --with-pcre=/usr/local/pcre 支持 pcre
    --with-z=/usr/local/zlib  使用 zlib 压缩库
    --with-apr=/usr/local/apr   指定 apr 的安装路径
    --with-apr-util=/usr/local/apr-util 指定 apr-util 的安装路径
    --enable-expires:激活彧通过配置文件控制 HTTP 的“Expires:”和“Cache-Control:”头内容,即对网站图片、js、css 等内容,提供客户端浏览器缓
    存的设置。这个是 apache 调优的一个重要选项之一。
    --enable-deflate:提供对内容的压缩传输编码支持,一般是 html、js、css 等内容的站点。使用此参数会打打提高传输速度,提升访问者访问的体验。在生产环境中,这是 apache 调优的一个重要选项之一
    到这里必须要知道Apache的三种工作模式:event,worker,prefork !!!

    在make && make install完成之后我们一定要echo $?来确保安装没过程中没有错误

    此时我们的apache2.4已经正式的安装成功!!!


    6.优化http程序执行路径

    # ln -s /usr/local/http-2.4.23/bin/* /usr/local/bin/

    修改配置文件设置ServerName
    我们在安装apache的时候安装路径指定到了/usr/local/http2.4下面,我们进去http的安装位置查看有什么目录。

    我们看到了一个conf目录,也就是说这个目录下面存放的就是我们apache的主配置文件,httpd.conf(修改servername)

    7.开启apache服务

    设置apache为开机自启动

    1.  
      #cp /usr/local/http-2.4.23/bin/apachectl /etc/init.d/httpd
    2.  
      sed -i '1a # chkconfig: 35 85 21' /etc/init.d/httpd
    3.  
      sed -i '2a # description: apache 2.4.23' /etc/init.d/httpd



    添加为系统服务并自启动

    修改网页根目录,client访问测试

    以下是apache网页根目录(我们可以在里面更改想要的内容)

    注意:如果做到这里httpd已经启动但是无法访问可能造成原因有以下几种:
    1.清除浏览器缓存后再次访问。
    2.没有关闭selinux会出现访问不到的情况
    3.没有关闭防火墙,则需要添加80端口,或者可以选择关闭防火墙

  • 相关阅读:
    [BNUOJ] ACM Battle(贪心)
    [BNUOJ]Training Plan(贪心,dp)
    [BNUOJ]Squared Permutation(线段树,单点更新)
    可以处理重边的求割点(边)模板
    [Python] Spark平台下实现分布式AC自动机(一)
    [HDOJ2222]Keywords Search(AC自动机)
    [GCJ] Qualification Round 2017
    HDU 6298.Maximum Multiple-数学思维题(脑子是个好东西,可惜我没有) (2018 Multi-University Training Contest 1 1001)
    牛客网 牛客小白月赛5 I.区间 (interval)-线段树 or 差分数组?
    牛客网 暑期ACM多校训练营(第二场)J.farm-STL(vector)+二维树状数组区间更新、单点查询 or 大暴力?
  • 原文地址:https://www.cnblogs.com/suli0827/p/9541498.html
Copyright © 2020-2023  润新知