ඔබ php-fpm නැවත ආරම්භ කරන්නේ කෙසේද?


184

මට මගේ php.ini නැවත පූරණය කිරීමට අවශ්‍ය වන අතර එය නැවත ආරම්භ කිරීම පිළිබඳ උදව් සංවාදයේ කිසිවක් නොමැත.

Answers:


335

සටහන : 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
    

නැතහොත් ඔබේ පද්ධතියේ සමාන දේ කුමක් වුවත්.


2
මැක් ගැන කුමක් කිව හැකිද? php-fpm ස්ථාපනය කර ඇත්තේ හෝම්බ rew භාවිතයෙන්. which php-fpmලබා දෙයි /usr/local/sbin/php-fpm.
hobbes3

6
ob විනෝදාංශ 3 උත්සාහ කරන්න brew services restart php56(ඔබට ලබා ගත හැකි සූත්‍රයක් පිළිබඳ දෝෂයක් ඇත්නම්, වෙනත් අනුවාදයක් උත්සාහ කරන්න. උදා: php5 හෝ php55). ඔබ සතුව බීර සේවා ස්ථාපනය කර නොමැති නම්, එය පළමු වරට එය ඔබ වෙනුවෙන් ස්ථාපනය කළ යුතුය.
ඩොක්ටර් ජේ

ඉහත කිසිවක් මා වෙනුවෙන් වැඩ නොකළ නමුත් මෙය සිදු විය: service php-fcgi-mydomain-com restartතවද වෙබ් අඩවි සක්‍රීය කළ සෑම වසමකටම එය නැවත කිරීමට මට සිදු විය
ඉලිච්

මෙය මට හොඳ එකක් විය (centOs):systemctl reload php70-php-fpm
4wk_

මම උබුන්ටු 16,04 ඉන්නේ හා මෙම කාර්යය බවක්: systemctl restart php5.6-fpm.service
relipse

30

මැක් ඕඑස් එක්ස් සඳහා, මම කරන්නේ මෙයයි:

පිටපතක් සාදන්න /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 වෙතින් අමතන්න !!


4
homebrew.mxcl.php*.plistඑය ක්‍රියාත්මක නොවන්නේ නම් භාවිතා කරන්න
ඩැනිල් රිෂ්කොව්

github.com/Homebrew/homebrew-php#installing-multiple-versions යනු ඔබට මෙම .plist ගොනුව සොයාගත නොහැකි අවස්ථාවකි.
ෆ්‍රෑන්ක් ෆැන්ග්

බීර සේවා මූලික වශයෙන් ඔබගේ ස්ක්‍රිප්ට් එක කරන දේ කරයි.
Qiulang

22

සාමාන්‍යයෙන්, service php5-fpm restartයාවත්කාලීන බෙදාහැරීමක් මත දඩ මුදල් ගෙවනු ඇත.

නමුත් සමහර විට, එය අසමත් වේ, ඔබට restart: Unknown instance:(හෝ එවැනි) පවසමින් .

දැන්, ඔබ ඔබේ සේවාදායකය නැවත ආරම්භ කිරීමට අකමැති නම්, ක්‍රියාවලි මරා දමා නව ආරම්භයක් ලබා ගන්න (මෙහි සංස්කරණය කර ඇත):

$ sudo pkill php5-fpm; sudo service php5-fpm start

ස්තූතියි, මෙය හරියටම මගේ ප්‍රශ්නය විසඳා ඇත. ( stop: Unknown instance:)
නිල්ලොක්

13

මෙය ක්‍රියාත්මක විය යුතුය:

pkill -o -USR2 php-fpm
pkill -o -USR2 php5-fpm

3
ඔබ මැක් මත හෝම්බ rew හරහා PHP-FPM ස්ථාපනය කර ඇත්නම්, පළමු විධානය බහාලුම් + පැටවීමට වඩා හොඳින් ක්‍රියා කරයි
ඇලන් අයිවී

OSX:killall php-fpm
ptim

OSX හි ඉහත මට "නොදන්නා පරිශීලක SR2" දෝෂයක් ලබා දුන්නේය. තර්ක ආපසු හැරවීම එය ස්ථාවර: "pkill -USR2 -o php-fpm"
Keeth

කන්ටේනරයක FPM නැවත ආරම්භ කිරීමට මට අවශ්‍ය දේ හරියටම ස්තූතියි!
ඒඩ්‍රියන් ගුන්ටර්

මම කලින් ස්ථාපනය කර ඇති හෝ xcode, php අනුවාදය සහ ඒ හා සම්බන්ධ -fpm සමඟ සම්බන්ධ වී ඇත්තේ කිසියම් හේතුවක් නිසා මිස හෝම්බ rew හරහා නොවේ. මම හිතුවා මම දැනටමත් එහි ඇති දේ භාවිතා කළ යුතුයි කියලා. මම භාවිතා කරන්නේ php-fpm --prefix /usr/local, ඒ සඳහා අවශ්‍ය ඩිරෙක්ටරි කිහිපයක් සෑදීමයි, සහ කීත් ප්‍රකාශ කර ඇති පරිදි pkill -USR2 -o php-fpm, පරීක්ෂා කිරීම pgrep -l fpmසහ PIDs ඇත්ත වශයෙන්ම වෙනස් වේ! වෙනත් පිළිතුරු වලින් සඳහන් කිරීමෙන් ප්‍රයෝජන ගැනීමට මට ලිපිගොනු හෝ සේවාවන් නොමැත.
පීසිස්


12

මට php7-fpm නැවත ආරම්භ කිරීමේ ගැටලුවක් ඇති විය, මන්ද සේවාව කොතරම් නිවැරදිව නම් කර ඇත්දැයි මා නොදැන සිටි බැවිනි. මෙම ක්‍රියාව මට පිළිතුර ලබා දුන්නේය:

service --status-all

මගේ උබුන්ටු හි php7-fpm සේවාව කැඳවන ලදි php7.0-fpm, එබැවින් මම එසේ කළෙමි:

service php7.0-fpm restart


5
+1 සඳහාservice --status-all
JD

6

ඔබ ප්‍රධාන ක්‍රියාවලියට USR2 සං signal ාවක් එවන්නේ නම් php-fpm නැවත ආරම්භ වේ:

sudo kill -USR2 php-fpm_main_process_id

ඒ නිසා අපි එහි pid කොහේ හරි පටිගත කරන ලෙස php-fpm ට උපදෙස් දිය යුතුයි. මෙම උදාහරණයේ දී, ඔබට එය සුරැකීමට අවශ්‍ය යැයි මම සිතමි /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`

මම කැමතියි @ dialt0ne සහ @ Keeth ගේ pkill ...පිළිතුර සහ ඉහත අදහස් දැක්වීම; කෙටි හා සරලයි.
පීසිස්

මෙය වඩා හොඳ සහ හොඳ පැහැදිලි කිරීමක්. ක්‍රියාවලි නිවැරදිව ගැලපෙන්නේ නැත්නම්, ඔබේ අනෙක් PHP පොකුරු එකම පෙට්ටියක ධාවනය වනවා නම් ඒවා විනාශ කිරීමේ අවදානම pkill ක්‍රියාත්මක කරයි (ඔව් මෙය නරක පුරුද්දකි).
පොහොසත් කේ.

3

මට නම් මම දැන් යෝග්‍ය ලෙස යාවත්කාලීන කර ඇති අතර සේවා නැවත ආරම්භ කිරීම ක්‍රියා නොකරයි. දැනට පවතින ක්‍රියාවලීන් භාවිතා කිරීමට පෙර එය විනාශ කිරීමට මට අවශ්‍ය විය: killall php5-fpm


2

PHP-FPM නැවත ආරම්භ කිරීමේ ස්ක්‍රිප්ට් වැඩ කිරීමට ඉඩ දීම සඳහා, ඔබ ඔබේ php-fpm.conf ගොනුවේ PID ගොනුවක් සඳහන් කළ යුතුය. එනම්

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

Php-fpm.conf හි pid සඳහා පෙරනිමි අගය කිසිවක් නැත, එයින් අදහස් කරන්නේ PID ගොනුවක් නිර්මාණය නොකිරීමයි, එයින් අදහස් වන්නේ නැවත ආරම්භ කිරීමේදී කුමන ක්‍රියාවලිය අවසන් විය යුතුද යන්න නැවත ආරම්භ කිරීමේ ස්ක්‍රිප්ටයට කිව නොහැකි බවයි.


2

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


1

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


0

වින්ඩෝස් මත:

  1. කළමනාකරණ කොන්සෝලය තුළ විවෘත සේවාවන්:

    Start -> Run -> "services.msc" -> OK
    
  2. php-fpmලැයිස්තුවෙන් තෝරන්න

  3. රයිට් ක්ලික් කර නැවත ආරම්භ කරන්න තෝරන්න


0

Nginx සමඟ ඇල්පයින් හි මෙය මෙහි ක්‍රියාත්මක වේ:

සියලුම php-fpm7 ක්‍රියාවලි විනාශ කිරීමට:

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

Php-fpm7 ආරම්භ කිරීමට:

php-fpm7


0

CentOS / RHEL 7.x + භාවිතයෙන් පද්ධති සේවා ලැයිස්තුගත කිරීම

systemctl

සියලුම සේවාවන් ලැයිස්තුගත කිරීම සඳහා:

systemctl list-unit-files

ඔබට * php-fpm * නම් වූ සේවාව සොයාගත හැකි අතර සේවා නාමය පිටපත් කර පහත විධානය ක්‍රියාත්මක කරන්න

systemctl නැවත ආරම්භ කිරීම ea-php72-php-fpm.service

සටහන: ea-php72-php-fpm. ඔබේ සේවා නාමය භාවිතා කරන්නාට සේවය කරන්න


-2

MaxOS සඳහා තවත් ක්‍රමයක්

ActivityMonitor විවෘත කරන්න, php-fpm සොයන්න, pid සොයා ගන්න.

ටර්මිනලය විවෘත kill [pid]කරන්න, php-fpm නැවැත්වීමට භාවිතා කරන්න

එවිට php-fpmපර්යන්තය එය ආරම්භ කිරීමට.

127.0.0.1:9000 දැනටමත් භාවිතයේ පවතින වැරදි තොරතුරු තිබේ නම්, එය නොසලකා හරින්න.

Nginx පිටුව නැවුම් කරන්න, php.ini වෙනස්කම් බලාත්මක වන බව දැකිය යුතුය.


MaxOS යනු කුමක්ද? ධාවනය php-fpmකිරීමෙන් බොහෝ විට එය වැරදි පරිශීලකයා යටතේ ක්‍රියාත්මක වේ; වැරදි පණිවිඩ නොසලකා හැරීම කිසි විටෙකත් හොඳ අදහසක් නොවේ.
ජෙරල්ඩ් ෂ්නයිඩර්
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.