Miklix

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.


Kaca ieu ditarjamahkeun ku mesin tina basa Inggris supados tiasa diaksés ku saloba-lobana jalma. Hanjakalna, tarjamahan mesin henteu acan janten téknologi anu sampurna, janten kasalahan tiasa lumangsung. Upami anjeun hoyong, anjeun tiasa ningali versi Inggris asli di dieu:

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:

sudo cp www.conf mypool.conf

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:

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

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:

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

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 php5-fpm restart
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.

Bagikeun on BlueskyBagikeun dina FacebookBagikeun on LinkedInBagikeun dina TumblrBagikeun harga XBagikeun on LinkedInPin on Pinterest

Mikkel Christensen

Ngeunaan Pangarang

Mikkel Christensen
Mikkel mangrupikeun panyipta sareng pamilik miklix.com. Anjeunna gaduh pangalaman langkung ti 20 taun salaku programmer komputer / pamekar software profésional sareng ayeuna padamelan full-time pikeun korporasi IT Éropa anu ageung. Nalika henteu ngeblog, anjeunna nyéépkeun waktos luangna dina sajumlah ageung minat, hobi, sareng kagiatan, anu tiasa ditingali dina rupa-rupa topik anu aya dina halaman wéb ieu.