上世紀(jì)九十年代末,隨著Linux和Apache服務(wù)器的普及,Web開(kāi)發(fā)開(kāi)始進(jìn)入黃金時(shí)期。而LAMP(Linux + Apache + MySQL + PHP)作為一組成熟的Web開(kāi)發(fā)環(huán)境,更是受到了開(kāi)發(fā)者們的大力追捧。其中,PHP作為一種腳本語(yǔ)言,被廣泛應(yīng)用于動(dòng)態(tài)網(wǎng)頁(yè)、Web應(yīng)用程序和服務(wù)端腳本等領(lǐng)域。然而,PHP的市場(chǎng)競(jìng)爭(zhēng)激烈,新特性和版本也層出不窮,如何升級(jí)PHP成為了LAMP用戶(hù)的一大關(guān)注點(diǎn)。
首先,我們需要明確一點(diǎn):升級(jí)PHP并不是一項(xiàng)易如反掌的操作,它涉及到系統(tǒng)環(huán)境、編譯器、模塊、配置文件等方面的問(wèn)題。具體而言,我們可以通過(guò)以下幾個(gè)步驟來(lái)升級(jí)PHP:
1.備份原有配置文件。不少的PHP應(yīng)用都涉及到一些配置文件,如php.ini、httpd.conf等等。在升級(jí)時(shí),一定要備份這些文件,以免升級(jí)后配置發(fā)生變化,導(dǎo)致原有應(yīng)用無(wú)法正常運(yùn)行。
2.下載新版本的PHP。PHP的官方網(wǎng)站(http://php.net/downloads.php)上提供了各種版本的PHP下載。我們需要根據(jù)自己的需求選擇合適的版本,并下載至本地。其中,最新版本的PHP已經(jīng)支持PHP-FPM(FastCGI進(jìn)程管理器),可以更好地提高性能。
3.編譯安裝新版本的PHP。下載完畢后,我們需要以ROOT用戶(hù)的身份解壓、編譯和安裝新版本的PHP。在編譯時(shí),可以通過(guò)配置參數(shù)(./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql)來(lái)自定義編譯參數(shù)。其中,--prefix表示編譯后的安裝目錄,--with-apxs2表示Apache的APXS可執(zhí)行文件路徑,--with-mysql表示MySQL的安裝路徑。
以下是編譯安裝的代碼示例:
cd /usr/local/src wget http://cn2.php.net/get/php-7.0.0.tar.gz/from/this/mirror -O php-7.0.0.tar.gz tar zxvf php-7.0.0.tar.gz cd php-7.0.0 ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql make && make install4.配置新版本的PHP。在編譯安裝后,我們需要重新配置新版本的PHP。使用./configure時(shí),會(huì)在安裝目錄下生成一個(gè)php.ini-production文件,我們需要將其重命名為php.ini,并根據(jù)自己的需要進(jìn)行配置。其中,我們可以開(kāi)啟或關(guān)閉某些擴(kuò)展,設(shè)置session和error的處理方式等等。 以下是配置文件的代碼示例:
cp /usr/local/php/php.ini-production /usr/local/php/php.ini vi /usr/local/php/php.ini extension_dir = "/usr/local/php/lib/php/extensions/" extension = "mysqli.so" extension = "mbstring.so" extension = "gd.so" session.save_handler = files session.save_path = "/tmp" session.cookie_lifetime = 0 session.cookie_domain = session.cookie_path = / session.name = PHPSESSID error_reporting = E_ALL & ~E_NOTICE display_errors = On log_errors = On error_log = "/usr/local/php/var/log/error_log"5.重啟Apache。在完成以上步驟后,我們需要重啟Apache服務(wù)器,使得新版本的PHP生效。此時(shí),可以通過(guò)phpinfo()函數(shù)從瀏覽器中查看到PHP的所有信息,如版本號(hào)、擴(kuò)展列表、配置文件路徑等等。 以下是重啟Apache的代碼示例:
/usr/local/apache/bin/apachectl stop /usr/local/apache/bin/apachectl start綜上所述,升級(jí)PHP需要注意以下幾個(gè)方面:備份原有配置文件、下載新版本的PHP、編譯安裝新版本的PHP、配置新版本的PHP和重啟Apache。由于不同版本的PHP可能有不同的特性和問(wèn)題,我們需要謹(jǐn)慎選擇,并在升級(jí)過(guò)程中多加留意,以免引發(fā)意外問(wèn)題。
下一篇lang php