Ungawasetha Kanjani Amachibi Ahlukene we-PHP-FPM ku-NGINX
Kushicilelwe: 15 Pébruari 2025 jam 11.57.27 UTC
Kulesi sihloko, ngihamba ngezinyathelo zokumisa ezidingekayo ukuze ngiqhube amachibi amaningi we-PHP-FPM futhi ngixhume i-NGINX kuwo nge-FastCGI, okuvumela ukuhlukaniswa kwenqubo nokuhlukaniswa phakathi kwababungazi ababonakalayo.
How to Set Up Separate PHP-FPM Pools in NGINX
Ulwazi kulokhu okuthunyelwe lusekelwe ku-NGINX 1.4.6 kanye ne-PHP-FPM 5.5.9 esebenza ku-Ubuntu Server 14.04 x64. Ingase ivumeleke noma ingasebenzi kwezinye izinguqulo. (Buyekeza: Ngingaqinisekisa ukuthi kusukela ku-Ubuntu Server 24.04, PHP-FPM 8.3 kanye ne-NGINX 1.24.0, yonke imiyalo kulokhu okuthunyelwe isasebenza)
Kunezinzuzo ezimbalwa zokusetha amachibi enqubo yezingane ye-PHP-FPM amaningi esikhundleni sokusebenzisa yonke into endaweni yokubhukuda efanayo. Ukuphepha, ukuhlukaniswa/ukuhlukaniswa kanye nokuphathwa kwezinsiza kubuya engqondweni njengokumbalwa okubalulekile.
Kungakhathaliseki ukuthi yini isisusa sakho, lokhu okuthunyelwe kuzokusiza ukuthi ukwenze :-)
Ingxenye 1 - Setha iphuli entsha ye-PHP-FPM
Okokuqala, udinga ukuthola inkomba lapho i-PHP-FPM igcina khona ukucushwa kwayo kwechibi. Ku-Ubuntu 14.04, lokhu kungu-/etc/php5/fpm/pool.d ngokuzenzakalelayo. Cishe sekuvele kunefayela lapho elibizwa ngokuthi www.conf , eliphethe ukucushwa kwechibi elizenzakalelayo. Uma ungazange ubheke lelo fayela ngaphambi kokuthi ube namathuba okuthi udlule kulo futhi ulungise izilungiselelo ezikulo zokusetha kwakho njengoba okumisiwe kungokweseva enamandla angaphansi kwamandla, kodwa okwamanje vele wenze ikhophi yalo ukuze kungadingeki siqale ekuqaleni:
Kunjalo, shintsha "mypool" nganoma yini ofuna ukuthi ichibi lakho libizwe.
Manje vula ifayela elisha usebenzisa i-nano noma yimuphi umhleli wombhalo owuthandayo futhi ulilungise ukuze livumelane nenhloso yakho. Cishe uzofuna ukulungisa izinombolo zenqubo yengane futhi mhlawumbe yimuphi umsebenzisi neqembu i-pool egijima ngaphansi kwayo, kodwa izilungiselelo ezimbili okufanele uzishintshe ngokuphelele igama lechibi kanye nesokhethi elilalelayo, ngaphandle kwalokho izongqubuzana ne-pool ekhona futhi izinto zizoyeka ukusebenza.
Igama lechibi liseduze naphezulu kwefayela, livalelwe kubakaki abayisikwele. Ngokuzenzakalelayo ithi [www] . Shintsha lokhu kunoma yini oyifunayo; Ngiphakamisa okufanayo njengoba uqambe ifayela lokumisa, ngakho-ke ngenxa yalesi sibonelo lishintshe libe yi- [mypool] . Uma ungayishintshi, kubonakala sengathi i-PHP-FPM izolayisha kuphela ifayela lokuqala lokucushwa elinalelo gama, okungenzeka liphule izinto.
Khona-ke udinga ukushintsha isokhethi noma ikheli olilalele, elichazwa umyalo wokulalela . Ngokuzenzakalelayo, i-PHP-FPM isebenzisa amasokhethi e-Unix ukuze isiqondiso sakho sokulalela sizobukeka kanje:
Ungayishintsha ibe yiliphi igama elivumelekile olifunayo, kodwa futhi, ngiphakamisa ukunamathela kokuthile okufana negama lefayela lokumisa, ukuze ngokwesibonelo ukulisethe ku:
Kulungile, gcina ifayela bese uphuma kusihleli sombhalo.
Ingxenye 2 - Buyekeza ukucushwa kokusingatha okubonakalayo kwe-NGINX
Manje udinga ukuvula ifayela le-NGINX le-virtual host ngokucushwa kwe-FastCGI ofuna ukukushintsha echibini elisha - noma kunalokho, xhuma kusokhethi elisha.
Ngokuzenzakalelayo ku-Ubuntu 14.04, lezi zigcinwa ngaphansi /etc/nginx/sites-available, kodwa zingachazwa kwenye indawo. Cishe wazi kangcono ukuthi ukucushwa komsingathi wakho okubonakalayo kutholakala kuphi ;-)
Vula ifayela lokucushwa elifanele kusihleli sakho sombhalo ozithandayo bese ubheka isiyalelo se-fastcgi_pass (okumele sibe sesimweni sendawo) esichaza isokhethi ye-PHP-FPM. Kumelwe ushintshe leli nani ukuze lifane nokulungiselelwa kwechibi le-PHP-FPM okusha okwenze ngaphansi kwesinyathelo sokuqala, ukuze uqhubeke nesibonelo sethu ungashintsha lokhu kube:
fastcgi_pass unix:/var/run/php5-fpm-mypool.sock;
Bese ulondoloza futhi uvale nalelo fayela. Usuzoqeda manje.
Ingxenye 3 - Qala kabusha i-PHP-FPM ne-NGINX
Ukuze usebenzise izinguquko zokumisa ozenzile, qala kabusha kokubili i-PHP-FPM ne-NGINX. Kungase kwanele ukulayisha kabusha esikhundleni sokuqala kabusha , kodwa ngiyithola ishaya kancane futhi igeja, kuye ngokuthi yiziphi izilungiselelo ezishintshwayo. Esimweni esithile, bengifuna ukuthi izinqubo zezingane ze-PHP-FPM zife ngaso leso sikhathi, ngakho-ke ukuqalisa kabusha i-PHP-FPM kwakudingeka, kodwa ku-NGINX ukulayisha kabusha kungase kwanele. Zizame ngokwakho.
sudo service nginx restart
Futhi voila, usuqedile. Uma wenze yonke into ngendlela efanele, umsingathi oyi-virtual omlungisile manje kufanele asebenzise iphuli entsha ye-PHP-FPM futhi angabelani ngezinqubo zezingane nanoma ibaphi abanye abasingathi ababonakalayo.