溫馨提示×

如何在Ubuntu上設置PHP-FPM自動重啟

小樊
43
2025-05-28 02:28:18
欄目: 編程語言

在Ubuntu上設置PHP-FPM自動重啟可以通過多種方式實現,以下是幾種常見的方法:

方法一:使用systemd服務

  1. 創建或編輯PHP-FPM服務文件: 打開終端并編輯PHP-FPM的服務文件。通常這個文件位于/etc/systemd/system/php-fpm.service。

    sudo nano /etc/systemd/system/php-fpm.service
    

    如果文件不存在,可以創建一個:

    sudo cp /lib/systemd/system/php7.4-fpm.service /etc/systemd/system/php-fpm.service
    sudo nano /etc/systemd/system/php-fpm.service
    

    根據你的PHP版本調整服務文件中的路徑和配置。

  2. 修改服務文件: 確保服務文件中有以下內容:

    [Unit]
    Description=The PHP FastCGI Process Manager
    After=syslog.target network.target
    
    [Service]
    Type=simple
    PIDFile=/run/php/php7.4-fpm.pid
    ExecStart=/usr/sbin/php-fpm7.4 --nodaemonize --fpm-config /etc/php/7.4/fpm/php-fpm.conf
    ExecReload=/bin/kill -USR2 $MAINPID
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target
    

    根據你的PHP版本調整路徑和配置。

  3. 重新加載systemd配置: 保存并關閉文件后,重新加載systemd配置以識別新的服務文件:

    sudo systemctl daemon-reload
    
  4. 啟動并啟用PHP-FPM服務: 啟動PHP-FPM服務并設置為開機自啟:

    sudo systemctl start php-fpm
    sudo systemctl enable php-fpm
    
  5. 設置自動重啟: 你可以使用Restart選項來設置自動重啟策略。例如,設置為在失敗時自動重啟:

    [Service]
    Restart=on-failure
    

    或者設置為每隔一段時間自動重啟:

    [Service]
    Restart=always
    RestartSec=30
    

方法二:使用cron任務

如果你不想使用systemd,可以使用cron任務來定期重啟PHP-FPM。

  1. 編輯crontab文件: 打開當前用戶的crontab文件:

    crontab -e
    
  2. 添加重啟任務: 添加一行來定期重啟PHP-FPM。例如,每5分鐘重啟一次:

    */5 * * * * /usr/sbin/service php7.4-fpm restart
    

    根據你的PHP版本調整命令。

  3. 保存并退出: 保存并退出編輯器。

方法三:使用supervisord

Supervisord是一個進程控制系統,可以用來管理多個進程,包括PHP-FPM。

  1. 安裝supervisord

    sudo apt-get install supervisor
    
  2. 配置supervisord: 編輯supervisord的配置文件:

    sudo nano /etc/supervisor/conf.d/php-fpm.conf
    

    添加以下內容:

    [program:php-fpm]
    command=/usr/sbin/php-fpm7.4 --nodaemonize --fpm-config /etc/php/7.4/fpm/php-fpm.conf
    autostart=true
    autorestart=true
    stderr_logfile=/var/log/php-fpm.err.log
    stdout_logfile=/var/log/php-fpm.out.log
    

    根據你的PHP版本調整命令和路徑。

  3. 重新加載supervisord配置: 保存并關閉文件后,重新加載supervisord配置:

    sudo supervisorctl reread
    sudo supervisorctl update
    
  4. 啟動PHP-FPM: 使用supervisord啟動PHP-FPM:

    sudo supervisorctl start php-fpm
    

通過以上方法,你可以在Ubuntu上設置PHP-FPM自動重啟,確保服務的穩定性和可靠性。

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