在Linux系統中,PHP-FPM(FastCGI Process Manager)與Apache可以通過mod_proxy_fcgi模塊進行搭配使用。這樣可以讓Apache作為反向代理服務器,將PHP請求轉發給PHP-FPM進程處理。以下是配置步驟:
安裝Apache和PHP-FPM: 根據你的Linux發行版,使用相應的包管理器安裝Apache和PHP-FPM。例如,在基于Debian的系統中,可以使用以下命令安裝:
sudo apt-get update
sudo apt-get install apache2 libapache2-mod-fcgid php-fpm
配置PHP-FPM:
編輯PHP-FPM配置文件(通常位于/etc/php/版本號/fpm/pool.d/www.conf
),設置listen
參數為一個Unix套接字文件(例如/var/run/php/php7.4-fpm.sock
)或TCP端口(例如127.0.0.1:9000
)。例如:
listen = /var/run/php/php7.4-fpm.sock
然后重啟PHP-FPM服務:
sudo systemctl restart php7.4-fpm
啟用Apache的mod_proxy_fcgi模塊: 使用以下命令啟用mod_proxy_fcgi模塊:
sudo a2enmod proxy_fcgi setenvif
配置Apache虛擬主機:
編輯Apache虛擬主機配置文件(通常位于/etc/apache2/sites-available/000-default.conf
),在<VirtualHost>
部分添加以下內容:
<FilesMatch \.php$>
SetHandler "proxy:fcgi://localhost:9000"
ProxyPassMatch ^(.*)$ fcgi://localhost:9000/var/www/html/$1
</FilesMatch>
這里的localhost:9000
應與PHP-FPM配置中的listen
參數保持一致。/var/www/html
是你的網站根目錄,根據實際情況進行修改。
重啟Apache服務: 使用以下命令重啟Apache服務以應用更改:
sudo systemctl restart apache2
現在,Apache已經配置為將PHP請求轉發給PHP-FPM進程處理。你可以訪問你的網站,看到PHP頁面正常運行。