在Linux下配置Nginx以支持PHP,你需要遵循以下步驟:
首先,確保你已經安裝了Nginx和PHP-FPM。如果尚未安裝,可以使用以下命令進行安裝:
對于基于Debian的系統(如Ubuntu):
sudo apt-get update
sudo apt-get install nginx php-fpm
對于基于RPM的系統(如CentOS、Fedora):
sudo yum install epel-release
sudo yum install nginx php-fpm
編輯PHP-FPM配置文件。通常位于/etc/php/版本號/fpm/pool.d/www.conf
。例如,如果你使用的是PHP 7.4,那么文件路徑為/etc/php/7.4/fpm/pool.d/www.conf
。
找到以下行并進行修改:
;listen = /run/php/php7.4-fpm.sock
取消注釋并更改為:
listen = /run/php/php7.4-fpm.sock
同時,找到以下行:
;listen.owner = www-data
;listen.group = www-data
取消注釋并更改為:
listen.owner = nginx
listen.group = nginx
保存并關閉文件。
對于基于Debian的系統:
sudo systemctl restart php7.4-fpm
對于基于RPM的系統:
sudo systemctl restart php-fpm
編輯Nginx配置文件。通常位于/etc/nginx/sites-available/默認
。例如,在Ubuntu上,文件路徑為/etc/nginx/sites-available/default
。
在server
塊中,找到location ~ \.php$
部分并進行修改,以便將PHP請求傳遞給PHP-FPM。修改后的配置應如下所示:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
請確保將php7.4-fpm.sock
替換為你在步驟2中設置的PHP-FPM套接字名稱。
對于基于Debian的系統:
sudo systemctl restart nginx
對于基于RPM的系統:
sudo systemctl restart nginx
現在,Nginx應該已經成功配置為支持PHP。你可以通過創建一個名為info.php
的文件并將其放在你的網站根目錄中來測試配置。在該文件中添加以下內容:
<?php
phpinfo();
?>
然后在瀏覽器中訪問http://your_server_ip/info.php
。如果看到PHP信息頁面,那么恭喜你,Nginx已成功配置為支持PHP!