Kumaha Nyetél Kolam PHP-FPM Pisah di NGINX
Diterbitkeun: 15 Pébruari 2025 jam 11.56.11 UTC
Panungtungan diropéa: 12 Januari 2026 jam 8.30.24 UTC
Dina tulisan ieu, kuring bakal ngabahas léngkah-léngkah konfigurasi anu diperyogikeun pikeun ngajalankeun sababaraha kumpulan PHP-FPM sareng nyambungkeun NGINX ka aranjeunna via FastCGI, anu ngamungkinkeun pamisahan prosés sareng isolasi antara host virtual.
How to Set Up Separate PHP-FPM Pools in NGINX
Inpormasi dina tulisan ieu dumasar kana NGINX 1.4.6 sareng PHP-FPM 5.5.9 anu dijalankeun dina Ubuntu Server 14.04 x64. Éta tiasa valid atanapi henteu pikeun vérsi anu sanés. (Apdet: Abdi tiasa mastikeun yén ti saprak Ubuntu Server 24.04, PHP-FPM 8.3 sareng NGINX 1.24.0, sadaya pitunjuk dina tulisan ieu masih tiasa dianggo)
Aya sababaraha kaunggulan pikeun nyetél sababaraha kumpulan prosés turunan PHP-FPM tibatan ngajalankeun sadayana dina kumpulan anu sami. Kaamanan, pamisahan/isolasi sareng manajemen sumber daya muncul dina pikiran salaku sababaraha kaunggulan utama.
Naon waé motivasi anjeun, tulisan ieu bakal ngabantosan anjeun ngalakukeunana :-)
Bagian 1 – Nyetél kumpulan PHP-FPM anyar
Mimitina, anjeun kedah milarian diréktori dimana PHP-FPM nyimpen konfigurasi pool-na. Dina Ubuntu 14.04, ieu /etc/php5/fpm/pool.d sacara standar. Sigana tos aya file di dinya anu disebut www.conf, anu nyimpen konfigurasi pikeun pool standar. Upami anjeun teu acan ningali file éta sateuacanna, kamungkinan anjeun kedah ningali éta sareng ngarobih setélan di jerona pikeun setelan anjeun sabab standarna pikeun server anu rada lemah, tapi ayeuna jieun salinanana supados urang henteu kedah ngamimitian ti mimiti:
Tangtosna, gentos "mypool" ku naon waé anu anjeun pikahoyong pikeun kolam renang anjeun.
Ayeuna buka file anyar nganggo nano atanapi éditor téks mana waé anu anjeun pikaresep teras saluyukeun supados cocog sareng tujuan anjeun. Anjeun panginten hoyong ngarobih nomer prosés anak sareng kamungkinan pangguna sareng grup mana anu dijalankeun ku pool, tapi dua setélan anu anjeun kedah robih nyaéta nami pool sareng soket anu didangukeun, upami henteu éta bakal konflik sareng pool anu tos aya sareng sadayana bakal eureun jalan.
Nami pool-na aya di deukeut luhur file, diapit kurung siku. Sacara standar éta [www]. Robah ieu ka naon waé anu anjeun pikahoyong; kuring nyarankeun sami sareng anjeun masihan nami file konfigurasi, janten pikeun conto ieu robih janten [mypool]. Upami anjeun henteu ngarobihna, sigana PHP-FPM ngan ukur bakal ngamuat file konfigurasi anu munggaran nganggo nami éta, anu kamungkinan bakal ngarusak hal-hal.
Anjeun teras kedah ngarobih soket atanapi alamat anu anjeun dengekeun, anu ditetepkeun ku diréktif listen. Sacara standar, PHP-FPM nganggo soket Unix janten diréktif listen anjeun sigana bakal katingali sapertos kieu:
Anjeun tiasa ngarobihna kana nami naon waé anu anjeun pikahoyong, tapi sakali deui, kuring nyarankeun tetep nganggo anu sami sareng nami file konfigurasi, janten anjeun tiasa contona nyetelna ka:
Muhun teras, simpen file na teras kaluar ti éditor téks.
Bagian 2 – Apdet konfigurasi host virtual NGINX
Ayeuna anjeun kedah muka file virtual host NGINX nganggo konfigurasi FastCGI anu anjeun hoyong robih ka kolam renang énggal - atanapi langkung tepatna, sambungkeun kana soket énggal.
Sacara standar dina Ubuntu 14.04, ieu disimpen dina /etc/nginx/sites-available, tapi ogé tiasa dihartikeun di tempat sanés. Anjeun panginten langkung terang dimana konfigurasi host virtual anjeun ayana ;-)
Buka file konfigurasi anu relevan dina éditor téks karesep anjeun teras milarian diréktif fastcgi_pass (anu kedah aya dina kontéks lokasi) anu ngahartikeun soket PHP-FPM. Anjeun kedah ngarobih nilai ieu supados cocog sareng konfigurasi kolam renang PHP-FPM énggal anu anjeun jieun dina léngkah kahiji, janten teraskeun conto urang, anjeun bakal ngarobih ieu janten:
Fastcgi_pass unix:/var/run/php5-fpm-mypool.sock;
Teras simpen sareng tutup file éta ogé. Anjeun ampir réngsé ayeuna.
Bagian 3 – Pareuman terus hurungkeun deui PHP-FPM sareng NGINX
Pikeun nerapkeun parobihan konfigurasi anu anjeun lakukeun, mimitian deui PHP-FPM sareng NGINX. Panginten cekap ngan ukur ngamuat ulang tibatan ngamimitian deui, tapi kuring mendakan éta rada hésé, gumantung kana setélan anu dirobih. Dina kasus khusus, kuring hoyong prosés turunan PHP-FPM anu lami langsung pareum, janten ngamimitian deui PHP-FPM diperyogikeun, tapi pikeun NGINX ngamuat ulang panginten cekap. Cobi waé.
sudo service nginx restart
Sareng voila, anjeun parantos réngsé. Upami anjeun ngalakukeun sadayana kalayan leres, host virtual anu anjeun modifikasi ayeuna kedah nganggo kumpulan PHP-FPM anu énggal sareng henteu ngabagi prosés turunan sareng host virtual anu sanés.
