極其常見的情況是,在服務器上安裝了多個版本的 PHP。可能是因為你需要更新到一個新版本,但不想影響到現有的所有網站。或者你正在遷移一個網站到新的服務器,需要查找PHP的位置。
在Linux系統上,可以使用“which”命令來查找當前正在使用的PHP版本目錄:
which php
執行以上命令后,會顯示出你所使用的PHP的安裝目錄。
例如:
/usr/bin/php
有時候,可能在同一臺服務器上會安裝多個版本的 PHP。因此,通過 which 命令無法查找到你需要的PHP。這時候,可以使用在命令行中執行 “php -v” 來查找PHP的版本:
php -v
執行命令后,會顯示出PHP的版本以及安裝位置。例如:
PHP 7.2.19-0ubuntu0.18.04.2 (cli) (built: Aug 12 2019 19:34:28) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
在LAMP或LEMP服務器上,在主機上托管的網站都位于/var/www目錄下。在此目錄中,有具體的文件夾來存放一個或多個網站。因此,通過進入到此目錄并且執行 ls 命令,查找web目錄以獲取PHP安裝目錄:
cd /var/www ls -alh
在查找到網站代碼的目錄后,進入到該目錄并執行 “ls -alh” 命令來查找二進制文件(例如PHP)。此時,需要使用管道符號將“grep” 命令與“ls”命令結合起來查找:
cd /var/www/html/example.com ls -alh | grep php
執行方法查找出的結果可能會像下面這樣:
-rwxr-xr-x 1 root www-data 37K Aug 12 2019 php7.2-cgi -rwxr-xr-x 1 root www-data 37K Aug 12 2019 php -rwxr-xr-x 1 root www-data 37K Aug 12 2019 php-cgi
有時候,在服務器上安裝 PHP 后,它所在的二進制文件不會像上面示例那樣命名為“php”或“php-cgi”。因此,可以通過“find”命令來查找二進制文件:
find / -name php -type f 2>/dev/null
執行該命令時,必須使用 root 權限,否則訪問會被拒絕。執行該命令時,需要忽略錯誤,不讓由于權限的問題造成大量的錯誤信息。如果能找到PHP,它會顯示路徑的列表。
綜上,我們可以在Linux系統中找到PHP的安裝目錄,輕松地管理多個版本。這對我們平時的開發調試以及服務器的管理都有很大的幫助作用。