我在伺服器上安裝了兩個PHP版本 7.2
和 7.4
。兩個版本都已啟用。
目前有一個專案正在使用 PHP 7.2
。我需要運行一個新項目,使用 PHP 7.4
。正如我之前提到的,我不會使用 PHP-FPM。經過一些研究,我應該使用a2dismod php7.2
和a2denmod php7.4
來停止7.2
版本並啟動code> ;7.4
版本。但在這種情況下,目前正在運行的專案將停止運作,因為它與版本 7.2
相容。
所以,有沒有辦法在不使用PHP-FPM 的情況下配置Apache,使其能夠處理在同一伺服器上運行的兩個不同項目,一個使用PHP 7.2
,另一個使用7.4
?
使用PHP作為Apache模組時,據我所知,每個伺服器實例只能載入一個PHP模組。
然而,與PHP-FPM類似,您可以執行兩個Apache伺服器實例。一個配置了PHP 7.2模組,另一個配置了PHP 7.4模組。
假設PHP 7.2模組的Apache是目前的伺服器實例,它將代理PHP 7.4應用程式的虛擬主機到新的第二個Apache伺服器實例。
這與Nginx和兩個PHP-FPM相似,只是使用了不同的Apache和Apache佈局。
據我所知,您只能為主伺服器實例使用類似a2denmod(1)的標準實用程式。因此,請熟悉伺服器配置,Apache有很好的文檔,我個人非常喜歡它的配置。可能是因為我從大約Apache 1.3開始使用它。
然而,由於現在是2023年,Nginx PHP-FPM是一個非常好的組合。原始的Nginx是一個相當不錯的強大工具。