记一次apache2.2.27升级至2.4.29


 起因

     无语的百度检测给了网站安全检测12分的低分,说是apache2.2.27有巴拉巴拉多的漏洞,你赶快升级吧。我假装没看到,然后被催了好几天,终于开始动手更新了。

    

    

  第一步,安装新的apache

 

    首先将/etc/httpd.conf备份一份。

    然后下载一份最新的稳定版apache,开始安装。原先的2.2.27安装在/usr/local/apache2,这次新的就安装在/usr/local/apache3好了。

    

    configure如下

   ./configure --prefix=/usr/local/apache3 --with-mpm=worker --enable-cache --enable-disk-cache --enable-mem-cache --enable-file-cache --enable-nonportable-atomics --enable-mods-shared=most --enable-so --enable-rewrite --enable-ssl --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre

    ps:安装过程中会提示缺少apr,apr-util,pcre等等。要先安装这些。

    然后复制粘贴httpd.cong,注意因为php还没安装,所以在httpd.cong中,先不加载php,以及版本提升后输入的变化,我的修改如下

    

 

<IfModule dir_module>
    DirectoryIndex index.html index.php index.htm
</IfModule>
   
 
<VirtualHost *:80>
        DocumentRoot /var/www/
        ServerName 123.com
       <Directory "/var/www/">
       Options FollowSymLinks  (不显示目录列表,改为Options Indexes FollowSymLinks 显示目录列表)
       AllowOverride none
       Require all granted
       </Directory>
</VirtuAlHost>

 

    好了,关掉apache2.2.27打开apache2.4.29看看吧

    /usr/local/apache2/bin/httpd -k stop

   /usr/local/apache3/bin/httpd -k start

    

  第二步,安装php

    一开始我直接把apache2/modules/下的libphp5.so复制过来直接用,哈哈,果然不行呢,还得重新编译一份。

    找到或重新下载一份php文件,再通过<?php echo phpinfo();?>获取到原来的安装命令

    

    复制粘贴,修改下php的安装位置与apache的地址

    './configure' '--prefix=/usr/local/php4' '--with-apxs2=/usr/local/apache3/bin/apxs' '--with-mysql=/usr/local/mysql' '--with-gd=/usr/local/libgd' '--enable-gd-native-ttf' '--with-ttf' '--enable-gd-jis-conv' '--with-freetype-dir=/usr/local/freetype' '--with-jpeg-dir=/usr/local/libjpeg' '--with-png-dir=/usr/local/libpng' '--with-libxml-dir=/usr/local/libxml2' '--with-zlib-dir=/usr/local/zlib' '--enable-xml' '--enable-mbstring' '--enable-sockets'

    好了,php就安装好了,回到apache3/modules/下会发现新生成了libphp5.so

    再在apache的配置文件中添加

    LoadModule php5_module        modules/libphp5.so

    AddType application/x-httpd-php .php

    重新启动一下apache

   /usr/local/apache3/bin/httpd -k stop

   /usr/local/apache3/bin/httpd -k start

 

    哈哈,完美。这就算升级成功了,如果需要切换回去的话,只需要关闭正在运行的apache3/bin/httpd,启动apache2/bin/httpd就好了。

    文章的排版不好看。。谅解

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM