답변:
참고 : 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 사용 (예 : 우분투) :
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
또는 시스템에 해당하는 것이 무엇이든.
brew services restart php56
(사용 가능한 수식이 없다는 오류가 발생하면 php5 또는 php55와 같은 다른 버전을 시도하십시오). 추출 서비스가 설치되어 있지 않은 경우 처음 실행할 때 설치해야합니다.
service php-fcgi-mydomain-com restart
있었습니다 . 그리고 사이트 사용 가능한 모든 도메인에 대해 그것을 반복해야했습니다.
systemctl reload php70-php-fpm
systemctl restart php5.6-fpm.service
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에서 호출하십시오!
homebrew.mxcl.php*.plist
작동하지 않는 경우 사용
이것은 작동해야합니다 :
pkill -o -USR2 php-fpm
pkill -o -USR2 php5-fpm
killall php-fpm
php-fpm --prefix /usr/local
, 필요한 디렉토리 아래에 일부 디렉토리를 만들고 @Keeth가 언급했듯이 pkill -USR2 -o php-fpm
, 점검 pgrep -l fpm
하고 PID는 실제로 변경됩니다! 다른 답변 중 일부를 언급 할 plist 파일이나 서비스가 없었습니다.
주 프로세스에 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
또는 이들을 단일 명령으로 결합 할 수 있습니다.
$ sudo kill -USR2 `cat /etc/private/php-fpm.pid`
pkill ...
답변과 의견을 더 좋아합니다 . 더 짧고 간단합니다.
softwarecollections.org의 PHP 7을 사용하는 RedHat / CentOS 7
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
php-fpm 서비스의 이름을 찾는 가장 간단한 방법은 검색하는 것입니다.
systemctl -l --type service --all | grep fpm
systemctl list-units *fpm*
CentOS / RHEL 7.x +에서 시스템 서비스를 나열하려면 다음을 사용하십시오.
systemctl
모든 서비스를 나열하려면
systemctl 목록 단위 파일
* php-fpm * copy service name이라는 서비스를 찾을 수있는 곳에서 다음 명령을 실행하십시오
systemctl restart ea-php72-php-fpm.service
참고 : ea-php72-php-fpm.service 사용자 서비스 이름
MaxOS를위한 또 다른 방법
ActivityMonitor를 열고 php-fpm을 검색하고 pid를 찾으십시오.
터미널 열기, kill [pid]
PHP-FPM 중지에 사용
그런 다음 php-fpm
터미널에서 시작하십시오.
127.0.0.1:9000 이미 사용중인 오류 정보가 있으면 무시하십시오.
Nginx 페이지를 새로 고치면 php.ini 변경 사항이 적용됩니다.
php-fpm
하면 대부분 잘못된 사용자로 실행 됩니다. 오류 메시지를 무시하는 것은 좋은 생각이 아닙니다.
which php-fpm
제공합니다/usr/local/sbin/php-fpm
.