記一次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