[教學] 在ubuntu安裝多版本PHP (Apache)

 

現在PHP7已經逐漸主流,而PHP5.6即將要淘汰,不過有時候因為一些舊專案維護關係可能還會需使用到PHP5.6,要在同一台電腦同時維護PHP7專案與PHP5.6專案,在OSX可以使用brew輕鬆切換PHP版本,那Ubuntu環境呢?本文章教如何同時安裝多版本的PHP在ubuntu環境上。

首先要先新增apt-repository

sudo apt install python-software-properties software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update

接著依據自己需求安裝不同版本的PHP  (這邊範圍為同時安裝PHP5.6與PHP7.1)

※以下指令預設也會安裝apache server環境

sudo apt install php5.6
sudo apt install php7.1

接著安裝指定PHP所對應的套件

sudo apt install php5.6-cli php5.6-xml php5.6-mysql
sudo apt install php7.1-cli php7.1-xml php7.1-mysql

這時查看一下php版本會是最後安裝的版本

而實際上PHP被安裝在/usr/bin/php5.6與 /usr/bin/php7.1 而 /usr/bin/php只是用link連到現在的版本而已

php cli可以透過 update-alternatives 來進行版本切換

切換至PHP 5.6

sudo update-alternatives --set php /usr/bin/php5.6

切換至PHP7.1

sudo update-alternatives --set php /usr/bin/php7.1

而如果要切換apacheserver所使用的PHP版本 則是透過切換apache模組

由7.1切換至5.6

sudo a2dismod php7.1
sudo a2enmod php5.6
sudo systemctl restart apache2

由5.6切換至7.1

sudo a2dismod php5.6
sudo a2enmod php7.1
sudo systemctl restart apache2