Ⅰ ubuntu多版本php切換
本文主要講解了在Ubuntu系統中如何進行PHP版本的切換,以及升級到更高版本的PHP的具體步驟。以PHP從7.0升級到7.2為例,首先需要在Ubuntu系統中添加特定的PPA源,然後執行apt-get命令進行更新和升級。
在完成PHP版本的升級後,可以進一步安裝Swoole擴展,通常推薦使用pecl install命令進行安裝,可以避免手動編譯過程中可能遇到的版本對應不上的問題。
在完成PHP版本升級和擴展安裝後,為了在系統中切換不同的PHP版本,可以採取多種方法。針對Apache服務,可以通過修改配置文件中的`LoadMole`和`AddHandler`部分,實現對不同PHP版本的啟用和禁用。具體操作包括禁用舊版本(如PHP 7.0)並啟用新版本(如PHP 7.2),然後重啟服務(如使用`sudo service nginx restart`或`sudo service apache2 restart`)來完成切換。
在切換PHP版本時,可能會遇到一些問題,例如在瀏覽器中查看PHP信息時只能顯示新版本,而命令行環境下的PHP版本仍顯示為舊版本。這時可以使用`update-alternatives`命令來指定命令行環境中的PHP版本。此外,如果在系統中同時存在多個PHP版本,且在升級後某些應用項目出現錯誤,可能是因為埠被佔用導致PHP FastCGI程序啟動失敗。解決這個問題的方法是通過`ps aux|grep php`命令查找並終止相關PHP-fpm進程,進而重啟應用。
綜上所述,Ubuntu系統中進行PHP版本切換與升級需要通過一系列操作,包括添加PPA源、更新與安裝擴展、修改配置文件、切換與啟用不同版本的PHP,以及處理可能遇到的兼容性和配置問題。通過遵循上述步驟,可以順利地在Ubuntu系統中實現PHP版本的靈活切換與升級。
Ⅱ ubuntu多版本php切換
針對如何在 Ubuntu 系統中切換不同版本的 PHP,以下是具體的步驟和操作指南。
首先,要從 PHP 7.0 升級至 7.2,可以執行以下命令:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get upgrade php
# 擴展升級
sudo apt-get install php7.2-mbstring
sudo apt-get install php7.2-gd
sudo apt-get install php7.2-dom
sudo apt-get install php7.2-mysql
sudo apt-get install php7.2-curl
若需安裝 swoole,推薦直接使用 pecl install swoole 進行安裝,以避免手動編譯過程中可能出現的版本對應問題。
為了在伺服器中切換 PHP 版本,可以進行如下操作:
sudo a2dismod php7.0
sudo a2enmod php7.2
sudo service nginx restart
若在切換過程中遇到 ERROR: Mole php7.0 does not exist! 的問題,可以嘗試安裝 libapache2-mod-php7.0 後再執行上述步驟。
在瀏覽器中查看 phpinfo() 應該能看到版本為 7.2。在命令行中,可以通過執行以下命令切換 PHP 版本:
sudo update-alternatives --set php /usr/bin/php7.2
執行 php -v 命令後,可以看到命令行 CLI 環境下已切換為 PHP 7.2 版本。
在伺服器上運行多個 PHP 版本時,若出現報錯,檢查發現是埠被佔用導致的 php fastCGI 啟動失敗。可以使用以下方法解決問題:
ps aux|grep php 查找所有 php-fpm 進程,記錄進程 id,然後使用 kill 命令終止相應進程。
有解決方案建議使用 killall php-fpm 命令,但此命令實際並未解決問題。正確的做法是,通過 ps aux|grep php 查找並殺死具體進程,以此解決埠沖突問題。