Yadda Ake Saita Rarraba wuraren tafkunan PHP-FPM a cikin NGINX
Buga: 15 Faburairu, 2025 da 11:54:43 UTC
A cikin wannan labarin, na wuce matakan daidaitawa da ake buƙata don gudanar da wuraren tafki na PHP-FPM da yawa kuma in haɗa NGINX zuwa gare su ta hanyar FastCGI, ba da izinin rabuwar tsari da warewa tsakanin runduna masu kama da juna.
How to Set Up Separate PHP-FPM Pools in NGINX
Bayanin da ke cikin wannan sakon ya dogara ne akan NGINX 1.4.6 da PHP-FPM 5.5.9 da ke gudana akan Ubuntu Server 14.04 x64. Yana iya ko ba zai yi aiki ba don wasu nau'ikan. (Sabunta: Zan iya tabbatar da cewa kamar na Ubuntu Server 24.04, PHP-FPM 8.3 da NGINX 1.24.0, duk umarnin da ke cikin wannan sakon har yanzu yana aiki)
Akwai fa'idodi da yawa don kafa wuraren aikin sarrafa yara na PHP-FPM da yawa maimakon gudanar da komai a tafkin guda. Tsaro, rabuwa/keɓewa da sarrafa albarkatu suna zuwa tunani a matsayin wasu manyan abubuwa.
Ko da menene dalilin ku, wannan post ɗin zai taimaka muku yin shi :-)
Sashe na 1 - Kafa sabon tafkin PHP-FPM
Da farko, kuna buƙatar nemo kundin adireshi inda PHP-FPM ke adana saitunan tafkin sa. A kan Ubuntu 14.04, wannan shine /etc/php5/fpm/pool.d ta tsohuwa. Wataƙila akwai fayil ɗin da ake kira www.conf , wanda ke riƙe da daidaitawa don tafkin tsoho. Idan baku kalli wancan fayil ɗin ba kafin dama ya kamata ku shiga cikinsa kuma ku daidaita saitunan da ke cikin sa don saitin ku kamar yadda aka saba don sabar da ba ta da ƙarfi, amma a yanzu kawai ku yi kwafinsa don kada mu fara daga karce:
Tabbas, maye gurbin "mypool" tare da duk abin da kuke so a kira tafkin ku.
Yanzu buɗe sabon fayil ɗin ta amfani da nano ko kowane editan rubutu da kuka fi so kuma daidaita shi don dacewa da manufar ku. Wataƙila za ku so ku tweak ɗin tsarin aiwatar da yara da yiwuwar wanne mai amfani da rukuni na tafkin ke gudana a ƙarƙashin, amma saituna biyu waɗanda dole ne ku canza su ne sunan tafkin da soket ɗin da yake saurare, in ba haka ba zai ci karo da tafkin da ke akwai kuma abubuwa za su daina aiki.
Sunan tafkin yana kusa da saman fayil ɗin, an rufe shi cikin maƙallan murabba'i. Ta hanyar tsoho shine [www] . Canza wannan zuwa duk abin da kuke so; Ina ba da shawarar iri ɗaya kamar yadda kuka sanya sunan fayil ɗin sanyi, don haka saboda wannan misalin canza shi zuwa [mypool] . Idan ba ku canza shi ba, da alama PHP-FPM zai loda fayil ɗin daidaitawa na farko tare da wannan sunan, wanda wataƙila ya karya abubuwa.
Sannan kuna buƙatar canza soket ko adireshin da kuke sauraro, wanda aka bayyana ta hanyar umarnin sauraron . Ta hanyar tsoho, PHP-FPM yana amfani da sockets Unix don haka umarnin sauraron ku zai yi kama da haka:
Kuna iya canza shi zuwa kowane ingantaccen suna da kuke so, amma kuma, Ina ba da shawarar tsayawa da wani abu mai kama da sunan fayil ɗin sanyi, don haka zaku iya saita shi zuwa:
Da kyau, ajiye fayil ɗin kuma fita editan rubutu.
Sashe na 2 - Sabunta tsarin NGINX kama-da-wane
Yanzu kuna buƙatar buɗe fayil ɗin mai watsa shiri na NGINX tare da tsarin FastCGI da kuke son canzawa zuwa sabon tafkin - ko kuma wajen, haɗa zuwa sabon soket.
Ta hanyar tsoho akan Ubuntu 14.04, ana adana waɗannan a ƙarƙashin /etc/nginx/sites-samuwa, amma kuma ana iya bayyana su a wani wuri. Wataƙila za ku fi sanin inda saitunan rundunar ku ta kama-da-wane suke ;-)
Bude fayil ɗin daidaitawa mai dacewa a cikin editan rubutu da kuka fi so kuma nemi umarnin fastcgi_pass (wanda dole ne ya kasance cikin mahallin wuri) yana bayyana soket ɗin PHP-FPM. Dole ne ku canza wannan ƙimar don ta dace da sabon tsarin tafkin PHP-FPM da kuka yi a ƙarƙashin mataki na ɗaya, don haka ci gaba da misalinmu zaku canza wannan zuwa:
fastcgi_pass unix:/var/run/php5-fpm-mypool.sock;
Sa'an nan kuma ajiye kuma rufe wancan fayil ɗin shima. Kun kusa gamawa yanzu.
Sashe na 3 - Sake kunna PHP-FPM da NGINX
Don amfani da canje-canjen sanyi da kuka yi, sake kunna duka PHP-FPM da NGINX. Yana iya isa ya sake saukewa maimakon sake kunnawa , amma na same shi ya zama ɗan bugawa kuma ya ɓace, ya danganta da waɗanne saituna aka canza. A cikin takamaiman yanayin, Ina son tsoffin tsarin yaran PHP-FPM su mutu nan da nan, don haka ana buƙatar sake farawa PHP-FPM, amma don NGINX sake kunnawa na iya isa. Gwada shi da kanku.
sudo service nginx restart
Kuma voila, kun gama. Idan kun yi komai daidai, mai watsa shirye-shiryen da kuka gyara ya kamata yanzu ya kasance yana amfani da sabon tafkin PHP-FPM kuma kada ku raba ayyukan yara tare da kowane runduna mai kama-da-wane.