溫馨提示×

如何調整Ubuntu PHP-FPM進程管理

小樊
74
2025-03-04 11:52:54
欄目: 編程語言

要調整Ubuntu上的PHP-FPM進程管理,可以按照以下步驟進行:

1. 編輯PHP-FPM配置文件

首先,打開PHP-FPM的主要配置文件。配置文件通常位于 /etc/php/{version}/fpm/php-fpm.conf,其中 {version} 需要替換為你所安裝的PHP版本號,例如 7.48.0。

sudo nano /etc/php/{version}/fpm/php-fpm.conf

2. 修改進程管理參數

在配置文件中,可以調整以下關鍵參數來管理PHP-FPM進程:

  • pm.max_children:指定每個進程池中允許的最大子進程數量。
  • pm.start_servers:指定啟動時將創建的子進程數量。
  • pm.min_spare_servers:指定空閑狀態下保持的最小子進程數量。
  • pm.max_spare_servers:指定空閑狀態下保持的最大子進程數量。
  • pm.process_idle_timeout:設置空閑進程在終止前等待的時間(秒)。
  • listen:指定PHP-FPM監聽的地址和端口,可以是Unix套接字或TCP端口。

例如,要增加最大子進程數并設置監聽Unix套接字,可以修改如下配置:

pm.max_children = 50
listen = unix:/var/run/php/{version}-fpm.sock

3. 使用systemd進行進程守護

在支持systemd的Linux系統上,可以使用systemd進行PHP-FPM進程守護,以確保進程的穩定運行。

  1. 編輯PHP-FPM的systemd配置文件:

    sudo vi /etc/systemd/system/php{version}-fpm.service
    
  2. 在該文件中,添加或修改以下內容:

    [Unit]
    Description=PHP FastCGI Process Manager
    After=network.target
    
    [Service]
    ExecStart=/usr/sbin/php-fpm --nodaemonize --fpm-config /etc/php/{version}/fpm/php-fpm.conf
    
    [Install]
    WantedBy=multi-user.target
    
  3. 啟動PHP-FPM服務:

    sudo systemctl start php{version}-fpm
    
  4. 設置PHP-FPM服務開機自啟動:

    sudo systemctl enable php{version}-fpm
    

4. 重啟PHP-FPM服務

完成配置后,需要重新啟動PHP-FPM服務以使更改生效:

sudo systemctl restart php{version}-fpm

5. 驗證配置

可以使用以下命令檢查PHP-FPM服務的狀態:

sudo systemctl status php{version}-fpm

如果一切正常,你應該會看到PHP-FPM服務正在運行的狀態信息。

6. 配置Web服務器

確保你的Web服務器(如Nginx或Apache)已配置為使用PHP-FPM。例如,對于Nginx,可以在配置文件中添加以下內容:

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/{version}-fpm.sock;
}

對于Apache,可以在配置文件中添加以下內容:

<FilesMatch \.php$>
    SetHandler "proxy:unix:/var/run/php/{version}-fpm.sock|fcgi://localhost"
</FilesMatch>

完成以上步驟后,PHP-FPM應該已經成功配置并可以使用了。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女