web-dev-qa-db-ja.com

php-fpmをどのように再起動しますか?

Php.iniをリロードする必要がありますが、ヘルプダイアログに再起動することはありません。

184
Galen

:ルートでない場合は先頭にSudoを追加

  • SysV Initスクリプトを直接使用する:

    /etc/init.d/php-fpm restart    # typical
    /etc/init.d/php5-fpm restart   # debian-style
    /etc/init.d/php7.0-fpm restart # debian-style PHP 7
    
  • サービスラッパースクリプトの使用

    service php-fpm restart    # typical
    service php5-fpm restart   # debian-style
    service php7.0-fpm restart # debian-style PHP 7
    
  • Upstartを使用(例:ubuntu):

    restart php7.0-fpm         # typical (ubuntu is debian-based) PHP 7
    restart php5-fpm           # typical (ubuntu is debian-based)
    restart php-fpm            # uncommon
    
  • Systemd(新しいサーバー)の使用:

    systemctl restart php-fpm.service    # typical
    systemctl restart php5-fpm.service   # uncommon
    systemctl restart php7.0-fpm.service # uncommon PHP 7
    

または、システムに同等のものは何でも。

335
tylerl

Mac OS Xの場合、これは私が行うことです。

スクリプトを作成する/usr/local/etc/php/fpm-restart

#!/bin/sh

echo "Stopping php-fpm..."
launchctl unload -w ~/Library/LaunchAgents/homebrew-php*.plist

echo "Starting php-fpm..."
launchctl load -w ~/Library/LaunchAgents/homebrew-php*.plist

echo "php-fpm restarted"
exit 0

次に:

chmod ug+x /usr/local/etc/php/fpm-restart
cd /usr/local/sbin
ln -s /usr/local/etc/php/fpm-restart

/ usr/local/sbinが$ PATHにあることを確認してください

次に、ターミナルfpm-restartとBOOMから呼び出すだけです!!

30
Diego Antunes

通常、service php5-fpm restartは、最新のディストリビューションで問題なく動作します。

しかし、たまに失敗し、restart: Unknown instance:(またはそのような)。

ここで、サーバーを再起動したくない場合は、プロセスを強制終了し、新たに開始します(ここで編集済み)。

$ Sudo pkill php5-fpm; Sudo service php5-fpm start
22
BurninLeo

これはうまくいくはずです:

pkill -o -USR2 php-fpm
pkill -o -USR2 php5-fpm
13
dialt0ne

Mac OSXの場合brew services restart php56は私のために働きました。

12
Blake Frederick

サービスの正確な名前がわからなかったため、php7-fpmの再起動に問題がありました。この関数は私に答えを与えました:

service --status-all

私のUbuntuのphp7-fpmサービスはphp7.0-fpmと呼ばれていたので、次のようにしました。

service php7.0-fpm restart

12
Lucas

uSR2シグナルをメインプロセスに送信すると、php-fpmが再起動します。

Sudo kill -USR2 php-fpm_main_process_id

したがって、php-fpmにpidをどこかに記録するように指示する必要があります。この例では、/etc/private/php-fpm.pidに保存し、php-fpmがユーザー_phpとして実行されることを前提としています。まず、次の行を構成ファイルに追加します。

pid = /etc/php-fpm.pid

次に、ファイル/etc/php-fpm.pidを作成し、php-fpmにそれを変更する権限があることを確認します。

$ cd /etc
$ Sudo touch php-fpm.pid
$ Sudo chown _php php-fpm.pid
$ Sudo chmod 644 php-fpm.pid

これで、次にphp-fpmが起動したときに、そのpidを取得して次のように再起動できるようになります。

$ cat /etc/php-fpm.pid
815
$ Sudo kill -USR2 815

または、これらを1つのコマンドに組み合わせることができます。

$ Sudo kill -USR2 `cat /etc/private/php-fpm.pid`
6
Pitarou

私にとっては、apt経由でアップグレードしたばかりで、サービスの再起動が機能していませんでした。それが機能する前に既存のプロセスを殺す必要がありました:killall php5-fpm

3
Pooch

PHP-FPM再起動スクリプトを機能させるには、php-fpm.confファイルでPIDファイルを指定する必要があります。つまり.

pid = /var/run/php-fpm/php-fpm.pid

Php-fpm.confのpidのデフォルト値は何もありません。これは、PIDファイルを作成しないことを意味します。つまり、再起動スクリプトは、再起動中に終了するプロセスを通知できません。

2
Danack

Php 5.6 fpmがインストールされたUbuntu 16。

 /etc/init.d/php5.6-fpm restart
2
MrPHP

CentOS 7の場合

Sudo systemctl enable php-fpm // Just incase is disabled. Also ensures it starts automatically with the server

Sudo systemctl start php-fpm  // Start the service

Sudo systemctl stop php-fpm   // Stop the service

Sudo systemctl status php-fpm  // View status
2
Fokwa Best

RedHat/CentOS 7で PHP 7をsoftwarecollections.orgから使用する

service rh-php70-php-fpm start
service rh-php70-php-fpm stop
service rh-php70-php-fpm reload
service rh-php70-php-fpm restart
service rh-php70-php-fpm status

またはsystemctlを使用している場合:

systemctl start rh-php70-php-fpm
systemctl stop rh-php70-php-fpm
systemctl reload rh-php70-php-fpm
systemctl restart rh-php70-php-fpm
systemctl status rh-php70-php-fpm
1
Jeremy Tarpley

Php-fpmサービスの名前を見つける最も簡単な方法は、それを検索することです。

systemctl -l --type service --all | grep fpm
1
Saman Mohamadi

CentOS/RHEL 7.x +でsystemdサービスを一覧表示するには

systemctl

すべてのサービスをリストするには:

systemctl list-unit-files

* php-fpm * copy service nameという名前のサービスを見つけて、次のコマンドを実行できる場所

systemctl restart ea-php72-php-fpm.service

NOTE:ea-php72-php-fpm.serviceユーザーのサービス名

0

Nginxを備えたアルパインでは、これはここで機能しています:

すべてのphp-fpm7プロセスを強制終了するには:

kill $(ps -o pid,comm | grep php-fpm7 | awk '{print $1}')

Php-fpm7を起動するには:

php-fpm7

0
Junior M

古いバージョンのdebian&ubuntu-php 5.6の場合

 /etc/init.d/php-fpm56 restart
 service php-fpm56 restart
0

Windowsの場合:

  1. 管理コンソールでサービスを開きます。

    Start -> Run -> "services.msc" -> OK
    
  2. 選択する php-fpmリストから

  3. 右クリックして再起動を選択
0