在搭建PHP環境前,需確保Ubuntu系統已更新至最新版本,以避免依賴沖突:
sudo apt update && sudo apt upgrade -y
PHP是環境核心,需安裝核心包及常用擴展(如MySQL連接、GD圖像處理、XML解析等):
sudo apt install php php-cli php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
上述命令會安裝PHP主程序、命令行工具(php-cli)、PHP-FPM(進程管理,適用于Nginx/Apache)、MySQL數據庫驅動及常用功能擴展。
若需安裝PHP 8.x等較新版本(Ubuntu官方倉庫版本可能滯后),可添加Ondrej Sury的PPA:
sudo apt install software-properties-common -y # 安裝PPA管理工具
sudo add-apt-repository ppa:ondrej/php -y # 添加PPA源
sudo apt update # 更新包列表
添加PPA后,可通過sudo apt install php8.2(以PHP 8.2為例)安裝指定版本。
PHP需配合Web服務器(Apache/Nginx)使用,以下分別介紹配置方法:
sudo apt install apache2 libapache2-mod-php -y
libapache2-mod-php模塊用于讓Apache解析PHP文件。
sudo systemctl start apache2
sudo systemctl enable apache2 # 開機自啟
此時Apache已支持PHP,可直接訪問PHP文件。
sudo apt install nginx php-fpm -y
php-fpm(FastCGI進程管理器)負責處理PHP請求,提升性能。
編輯Nginx默認站點配置文件(/etc/nginx/sites-available/default),找到location ~ \.php$塊,替換為以下內容:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock; # 根據實際PHP版本調整路徑(如php7.4-fpm.sock)
}
保存后重啟Nginx:
sudo systemctl restart nginx
sudo systemctl enable nginx
創建測試文件驗證PHP是否正常運行:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
通過瀏覽器訪問http://服務器IP/info.php,若看到PHP配置信息頁面(包含版本、擴展列表等),則說明環境搭建成功。
若需切換或管理多個PHP版本,可使用以下方法:
update-alternatives(系統自帶工具)安裝多個PHP版本后,通過以下命令切換:
sudo update-alternatives --config php # 選擇默認PHP CLI版本
sudo update-alternatives --config php-fpm # 選擇默認PHP-FPM版本(適用于Nginx/Apache)
phpbrew(用戶級管理)phpbrew允許在用戶目錄下安裝和管理多個PHP版本,不影響系統全局環境:
curl -L -o phpbrew.phar https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew.phar
sudo mv phpbrew.phar /usr/local/bin/phpbrew
phpbrew init
source ~/.bashrc # 加載環境變量
phpbrew install 8.2.0 +default # 安裝PHP 8.2并設為默認
phpbrew switch 8.2.0 # 切換到指定版本
sudo apt update。php -m查看已加載模塊),重啟Web服務器或PHP-FPM。/var/www/html目錄權限正確(sudo chown -R www-data:www-data /var/www/html)。