您好,登錄后才能下訂單哦!
小編給大家分享一下如何在一臺機器上同時安裝PHP5.2和PHP5.3,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
測試用的 Linux 是 Fedora 14,初始狀態是已經安裝有 Apache 2.0.64 和 PHP5.2.6 ,分別安裝在如下路徑:
/usr/local/apache2
/usr/local/php5
現在要再安裝一套 PHP5.3,并且保留原有的 PHP5.2,理想狀態是它們可以共用已有的 Apache 2。考慮到 PHP 還有命令行運行的需要,即不經過 Apache 的,這就涉及到系統環境變量,所以先從環境變量入手做好準備。
1. 為方便切換 PHP 版本時不用修改環境變量,我們來做個軟鏈接,這樣在切換版本時只要修改一下軟鏈接就行了。
# mkdir -p /usr/php/
# ln -s /usr/local/php5 /usr/php/default
然后加入系統環境變量
# vi /etc/profiles
在文件開頭加一行
PHP_HOME=/usr/php/default
再找到 PATH= 那行把 PHP_HOME 加進去,比如
PATH=$JAVA_HOME/bin:$PATH:$PHP_HOME/bin:$MYSQL_HOME/bin
退出命令行窗口重新打開,以使環境變量生效,執行一下
$ php -version
能輸出 PHP 5.2.6 (cli) 之類的,說明軟鏈接和環境變量已設置好。
2. 備份 apache 的 PHP5.2 的模塊
找到 /usr/local/apache2/modules 下 libphp5.so 文件,這個應該是現有 PHP5.2 安裝時編譯出的模塊,把它換名備份一下,以方便下面我們安裝 PHP5.3 時編譯生成新的 PHP 模塊。
# mv libphp5.so libphp526.so
3. 編譯安裝 PHP5.3
具體配置可自行選擇,只要注意安裝路徑不同于已有的 PHP5.2 的路徑就行,如已有的 PHP5.2 的路徑是 /usr/local/php5,那么編譯 PHP5.3 時可以
./configure --prefix=/usr/local/php53 --with-apxs2=/usr/local/apache2/bin/apxs
--prefix=/usr/local/php53
表示新的 PHP5.3 安裝到 /usr/local/php53 路徑下
--with-apxs2=/usr/local/apache2/bin/apxs
表示仍使用現有的 apache2 編譯并配置
編譯安裝完成后,會在 /usr/local/php53 下生成很多文件,并且在 /usr/local/apache2/modules 下生成一個新的 libphp5.so,比較一下文件體積,它比剛才備份的 libphp526.so 體積大不少。
4. 配置 Apache2 使其支持不同版本的 PHP
先停止 apache 服務。
編輯 httpd.conf,找到
LoadModule php5_module modules/libphp5.so
這行,刪掉此行,再加上如下一段
<IfDefine php53>
LoadModule php5_module modules/libphp5.so
</IfDefine>
<IfDefine php526>
LoadModule php5_module modules/libphp526.so
</IfDefine>
然后啟動 apache 帶 -D 參數,如
/usr/local/apache2/bin/apachectl -D php53 -k start
則 Apache 會調用 httpd.conf 中 <IfDefine php53> 這段,加載新生成的 PHP5.3 的 libphp5.so。同理,如果
/usr/local/apache2/bin/apachectl -D php526 -k start
則 Apache 會調用 httpd.conf 中 <IfDefine php526> 這段,加載備份 PHP5.2 的 libphp526.so。
用瀏覽器打開一個 phpinfo() 信息頁看一下 PHP 信息吧,應該能看到不同版本的 PHP 信息了。
5. 更新 PHP 路徑的軟鏈接
PHP 還要加裝 PHP 的擴展,還得讓命令行執行 PHP5.3 的新版本,我們只要更新一下 PHP 路徑的軟鏈接就行了。
# rm -f /usr/php/default;
# ln -s /usr/local/php53 /usr/php/default
然后命令行執行
$ php -version
能輸出 PHP 5.3.6 (cli) 之類的,說明軟鏈接和環境變量已支持新版本了。
然后再編譯安裝 PHP 的擴展就可以直接用 phpize 而不用帶 PHP5.3 的絕對路徑了。
6. 切換 PHP 版本
綜合以上操作,如果要 PHP5.3 就讓 /usr/php/default 指向 /usr/local/php53,啟動 Apache 時用
/usr/local/apache2/bin/apachectl -D php53 -k start
如果要 PHP5.2 就讓 /usr/php/default 指向 /usr/local/php5,啟動 Apache 時用
/usr/local/apache2/bin/apachectl -D php526 -k start
以上是“如何在一臺機器上同時安裝PHP5.2和PHP5.3”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。