Miklix

Cara Nggawe Kolam PHP-FPM Pisah ing NGINX

Diterbitake: 15 Februari 2025 ing 11:54:46 UTC
Dianyari pungkasan: 12 Januari 2026 ing 08:30:18 UTC

Ing artikel iki, aku bakal ngrembug langkah-langkah konfigurasi sing dibutuhake kanggo mbukak pirang-pirang pool PHP-FPM lan nyambungake NGINX menyang pool kasebut liwat FastCGI, sing ngidini pamisahan proses lan isolasi antarane host virtual.


Kaca iki diterjemahake mesin saka basa Inggris supaya bisa diakses dening akeh wong. Sayange, terjemahan mesin durung dadi teknologi sing sampurna, mula kesalahan bisa kedadeyan. Yen sampeyan seneng, sampeyan bisa ndeleng versi Inggris asli ing kene:

How to Set Up Separate PHP-FPM Pools in NGINX

Informasi ing kiriman iki adhedhasar NGINX 1.4.6 lan PHP-FPM 5.5.9 sing mlaku ing Ubuntu Server 14.04 x64. Iki bisa uga valid utawa ora valid kanggo versi liyane. (Nganyari: Aku bisa ngonfirmasi manawa wiwit Ubuntu Server 24.04, PHP-FPM 8.3 lan NGINX 1.24.0, kabeh pandhuan ing kiriman iki isih bisa digunakake)

Ana sawetara kaluwihan nyetel pirang-pirang kumpulan proses anak PHP-FPM tinimbang mbukak kabeh ing kumpulan sing padha. Keamanan, pamisahan/isolasi, lan manajemen sumber daya muncul minangka sawetara kaluwihan utama.

Apa wae motivasimu, postingan iki bakal mbantu kowe nglakoni :-)

Bagean 1 – Nyetel kumpulan PHP-FPM anyar

Kapisan, sampeyan kudu nemokake direktori ing ngendi PHP-FPM nyimpen konfigurasi pool-e. Ing Ubuntu 14.04, iki minangka /etc/php5/fpm/pool.d minangka standar. Mbok menawa wis ana file ing kana sing diarani www.conf, sing nyimpen konfigurasi kanggo pool standar. Yen sampeyan durung nate ndeleng file kasebut sadurunge, kemungkinan sampeyan kudu mriksa lan nyetel setelan ing njero kanggo persiyapan sampeyan amarga standar kanggo server sing kurang daya, nanging saiki mung gawe salinane supaya kita ora kudu miwiti saka awal:

sudo cp www.conf mypool.conf

Mesthi wae, ganti "mypool" karo jeneng apa wae sing sampeyan karepake kanggo jeneng pool sampeyan.

Saiki bukak file anyar nganggo nano utawa editor teks apa wae sing disenengi lan atur supaya cocog karo tujuane. Sampeyan mbokmenawa pengin ngowahi nomer proses anak lan bisa uga pangguna lan grup endi sing digunakake kanggo mbukak pool, nanging rong setelan sing kudu diganti yaiku jeneng pool lan soket sing dirungokake, yen ora bakal konflik karo pool sing wis ana lan kabeh bakal mandheg bisa digunakake.

Jeneng blumbang kasebut ana ing cedhak sisih ndhuwur berkas, dilebokake ing kurung siku. Sacara standar yaiku [www]. Ganti iki dadi apa wae sing dikarepake; Aku saranake padha karo jeneng berkas konfigurasi, mula kanggo conto iki ganti dadi [mypool]. Yen sampeyan ora ngganti, katone PHP-FPM mung bakal mbukak berkas konfigurasi pisanan nganggo jeneng kasebut, sing bisa uga bakal ngrusak kabeh.

Sampeyan banjur kudu ngganti soket utawa alamat sing lagi dirungokake, sing ditetepake dening direktif listen. Kanthi gawan, PHP-FPM nggunakake soket Unix saengga direktif listen sampeyan mbokmenawa bakal katon kaya iki:

listen = /var/run/php5-fpm.sock

Sampeyan bisa ngganti dadi jeneng apa wae sing dikarepake, nanging maneh, aku saranake tetep nganggo jeneng sing padha karo jeneng file konfigurasi, supaya sampeyan bisa contone nyetel dadi:

listen = /var/run/php5-fpm-mypool.sock

Oke, simpen file kasebut lan metu saka editor teks.

Bagean 2 – Nganyari konfigurasi host virtual NGINX

Saiki sampeyan kudu mbukak file virtual host NGINX nganggo konfigurasi FastCGI sing pengin diganti dadi pool anyar - utawa luwih tepaté, sambungake menyang soket anyar.

Sacara standar ing Ubuntu 14.04, iki disimpen ing /etc/nginx/sites-available, nanging uga bisa ditetepake ing papan liya. Sampeyan mbokmenawa luwih ngerti ngendi konfigurasi virtual host sampeyan dumunung ;-)

Bukak file konfigurasi sing cocog ing editor teks favoritmu lan goleki direktif fastcgi_pass (sing kudu ana ing konteks lokasi) sing nemtokake soket PHP-FPM. Kowé kudu ngganti nilai iki supaya cocog karo konfigurasi pool PHP-FPM anyar sing wis kokgawe ing langkah siji, mula terusake conto iki, kowé bakal ngganti iki dadi:

Fastcgi_pass unix:/var/run/php5-fpm-mypool.sock;

Banjur simpen lan tutup file kasebut uga. Saiki wis meh rampung.

Bagean 3 – Wiwiti maneh PHP-FPM lan NGINX

Kanggo ngetrapake pangowahan konfigurasi sing wis digawe, miwiti maneh PHP-FPM lan NGINX. Bisa uga cukup mung ngunggah ulang tinimbang miwiti maneh, nanging aku nemokake iki rada angel, gumantung saka setelan sing diganti. Ing kasus tartamtu, aku pengin proses turunan PHP-FPM lawas langsung mati, mula miwiti maneh PHP-FPM dibutuhake, nanging kanggo NGINX ngunggah ulang bisa uga cukup. Cobanen dhewe.

sudo service php5-fpm restart
sudo service nginx restart

Lan voila, wis rampung. Yen sampeyan nindakake kabeh kanthi bener, host virtual sing sampeyan modifikasi saiki kudune nggunakake kumpulan PHP-FPM anyar lan ora nuduhake proses turunan karo host virtual liyane.

Nuduhake ing BlueskyNuduhake ing FacebookNuduhake ing LinkedInNuduhake ing TumblrNuduhake ing XNuduhake ing LinkedInPin ing Pinterest

Mikkel Christensen

Babagan Penulis

Mikkel Christensen
Mikkel minangka pencipta lan pemilik miklix.com. Dheweke duwe pengalaman luwih saka 20 taun minangka programmer komputer / pangembang piranti lunak profesional lan saiki kerja full-time kanggo perusahaan IT Eropa sing gedhe. Nalika ora ngeblog, dheweke mbuwang wektu luang kanggo macem-macem minat, hobi, lan kegiatan, sing bisa uga katon ing macem-macem topik sing dibahas ing situs web iki.