PHP版本特別多,特別雜,想自己搭一套php的運(yùn)行環(huán)境可不是一件容易的事,稍不留神就遇到一個(gè)坑,在某個(gè)問(wèn)題上卡住半天。這篇文章嘗試將PHP時(shí)的版本選擇中可能遇到的坑逐一說(shuō)明:
Windows下
首先看操作系統(tǒng)的版本,如果是Windows的在這里下載:http://windows./download/
再看操作系統(tǒng)是32位還是64位?如果是32位的,就選擇帶“x86”的版本,如果是64位的,就選擇帶“x64”的版本。
然后看WEB服務(wù)器是什么?如果是IIS系列,就選擇帶“Non Thread Safe”的版本,如果是Apache httpd系列,就選擇帶“Thread Safe”的版本。
如果是Apache httpd還要看這個(gè)二進(jìn)制版本是怎么編譯的,有三種編譯類型,分別是:VC6、VC9、VC11(分別代表Visual C++ 6、Visual C++ 2008、Visual C++ 2012)。這里就有麻煩了:PHP官方的最新版本5.5已經(jīng)用VC11編譯,5.4是用VC9編譯的??墒茿pache httpd的最新版本呢,至今還是用VC6編譯。這意味著一個(gè)驚人的事實(shí):Apache httpd的官方版本和PHP的官方版本竟然是無(wú)法兼容的!當(dāng)我費(fèi)了很大功夫發(fā)現(xiàn)這個(gè)事實(shí)的時(shí)候,我的嘴巴子都要驚掉了。那現(xiàn)有的Windows下的Apache+PHP是怎么搞的呢?可以自己用VC11編譯Apache httpd,但這太折騰了,PHP官方建議下載第三方打包好的Apache httpd版本,推薦了這個(gè)站點(diǎn):http://www./download/,需要說(shuō)明一點(diǎn):這個(gè)VC11不支持XP,如果你像我一樣有XP懷舊癥,最高只能升級(jí)到5.4.24,5.5是用VC11編譯的,而VC11不支持XP和2003。
知道了上述幾個(gè)原則再看下載的文件名就很清楚了,下面做習(xí)題鞏固吧,看這兩個(gè)文件名代表什么版本?
1 VC11 x64 Non Thread Safe
2 VC9 x86 Thread Safe
答案:
1 使用VC11編譯的用于64位Windows的,與IIS配套使用的版本
2 使用VC9編譯的用于32位Windows的,與Apache httpd配套使用的版本
Linux下
如果是Linux系的在這里下載PHP的源碼:http://cn2./downloads.php
與上面Windows版不同的是,這里下載到的不能直接用,只是PHP的源碼,要安裝需要自己編譯,要編譯就需要安裝gcc、make等一堆編譯軟件??吹轿臋n里說(shuō)./configure、make、make install,針對(duì)的就是PHP的源碼版本而言。
自己編譯php就更麻煩了,依賴的庫(kù)一大堆,等著人掉進(jìn)去的坑也有一大堆,我將在另一篇文章里說(shuō)。如果嫌麻煩,可以找已經(jīng)編譯好的版本,具體的說(shuō)就是各個(gè)發(fā)行版的官方的軟件庫(kù)。下面以流行的ubuntu系和centos系為例分別說(shuō)明;
deb包管理式(ubuntu、Debian)
用apt-cache search php命令可以搜出很多結(jié)果,我們需要是“php5”,完整的命令是:apt-get install php5
這顯然不是永遠(yuǎn)適用的,因?yàn)槊钪杏邪姹咎?hào)5,未來(lái)PHP6是什么情況誰(shuí)也不知道。
如果想在shell中安裝一個(gè)命令行的php引擎,就安裝這個(gè)包
apt-get install php5-cli
RPM包管理(Fedora、RedHat、SUSE、CentOS)
yum install php
如果是php命令行,就安裝yum install php-cli
吐個(gè)槽,連選擇版本都要知道這么多(本文的全名應(yīng)該叫《PHP的版本選擇:從入門到精通》,哈哈),說(shuō)了這么多,還沒(méi)開(kāi)始真的配置php環(huán)境呢,真的只是選擇版本而已,搞技術(shù)真是太辛苦了。




