我個人機器上環境是基於Apache2.2運行的PHP5.2/4,如你想部署其他版本的PHP或在更多的版本之間切換,同理操作步驟是一致的。
依本人環境為例,機器上已經安裝了PHP5.2版本, 所以首先重新創建5.2的服務:
- 如果你機器上已經運行了Web Server服務,可先暫停並設置為手動執行(因后續我們幾乎不再默認運行此服務了)。
- 編輯httpd.conf配置文件,加入以下形式的內容
<ifdefine php5.2>
# 提供apache調用的php5.2版本dll路徑
LoadModule php5_module "e:/AppServ\php5\php5apache2_2.dll"
# 你的php5.2版本php.ini路徑
PHPIniDir "C:/Windows/php.ini"
</ifdefine>
- 打開cmd命令行,切換到你的Apache bin目錄,執行如下命令
httpd.exe -k install -n Apache_php5.2 -D php5.2
- 現在你可以重啟新的名為Apache_php5.2服務,在PHP中打印phpinfo()來測試運行是否正常
上述過程無誤的話,可以繼續進行PHP5.4版本的配置了,你會感覺有種熟悉的感覺了
- 下載PHP5.4的二進制版本,並解壓到你希望放置的目錄(我機器上路徑為:E:/AppServ/php-5.4.37)
- 再次編輯httpd.conf配置文件,加入以下形式的內容
<ifdefine php5.4> LoadModule php5_module "E:/AppServ/php-5.4.37/php5apache2_2.dll" # php5.4的ini路徑(注意php5.4中將默認用php.ini-production/development兩個文件存在,個人已重命名) PHPIniDir "E:/AppServ/php-5.4.37/php.ini" </ifdefine>
- 打開cmd命令行,創建php5.4服務的apache服務
httpd.exe -k install -n Apache_php5.4 -D php5.4
經過這樣的配置,我們就實現了在不同PHP版本之間的切換。為了日常的操作方便,我們還可以編寫Bat文件來快速自動切換。
@echo off @sc query apache_php5.4 | find /i "running" > null if %ERRORLEVEL% == 0 ( net stop apache_php5.4 net start apache_php2.2 ) else ( net stop apache_php2.2 net start apache_php5.4 ) pause
Now it's ending!