Otu esi eme ma nyochaa ọnọdụ PHP-FPM na Nginx
PHP-FPM (FastCGI Process Manager) bụ ihe ọzọ PHP FastCGI mmejuputa atumatu nke na-abịa na ọnụ ọgụgụ nke amara atụmatụ bara uru maka weebụsaịtị nke ọ bụla size, karịsịa saịtị na-enweta elu okporo ụzọ.
A na-ejikarị ya na nchịkọta LEMP (Linux Nginx MySQL/MariaDB PHP); Nginx na-eji PHP FastCGI maka ozi ọdịnaya HTTP siri ike na netwọkụ. A na-eji ya na-eje ozi ọtụtụ nde PHP arịrịọ maka narị weebụsaịtị na sava weebụ na ịntanetị.
Otu n'ime njirimara bara uru nke php-fpm bụ ibe ọnọdụ arụnyere, nke nwere ike inyere gị aka nyochaa ahụike ya. N'isiokwu a, anyị ga-egosi otu esi eme ka ibe ọnọdụ PHP-FPM dị na Linux.
Otu esi eme ka ibe ọnọdụ PHP-FPM dị na Linux
Buru ụzọ mepee faịlụ nhazi php-fpm wee mee ka ibe ọnọdụ dị ka egosiri.
$ sudo vim /etc/php-fpm.d/www.conf OR $ sudo vim /etc/php/7.2/fpm/pool.d/www.conf #for PHP versions 5.6, 7.0, 7.1
N'ime faịlụ a, chọta ma kwupụta mgbanwe pm.status_path =/status
dị ka egosiri na nseta ihuenyo.
Chekwaa mgbanwe ndị ahụ wee pụọ na faịlụ ahụ.
Na-esote, lelee na faịlụ nhazi PHP-FPM maka njehie ọ bụla site na ịme iwu dị n'okpuru.
$ sudo php-fpm -t OR $ sudo php7.2-fpm -t
Mgbe ahụ malitegharịa ọrụ PHP-FPM ka itinye mgbanwe ndị na-adịbeghị anya.
$ sudo systemctl restart php-fpm OR $ sudo systemctl restart php7.2-fpm
Na-esote, dezie faịlụ nhazi ihe nkesa nke ndabara (virtual host) wee tinye ngọngọ ọnọdụ n'okpuru na ya. Dịka ọmụmaatụ na usoro ule, faịlụ nhazi ihe nkesa nke ndabara bụ /etc/nginx/conf.d/default.conf, maka saịtị test.lab.
$ sudo vim /etc/nginx/conf.d/default.conf
Nke a bụ ngọngọ ebe a ga-agbakwunye. Na nhazi a, anyị ahapụla naanị ịnweta PHP-FPM usoro nhazi n'ime localhost site na iji ntuziaka nyere 127.0.0.1 maka ihe nchekwa.
location ~ ^/(status|ping)$ { allow 127.0.0.1; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_index index.php; include fastcgi_params; #fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/var/run/php7.2-fpm.sock; }
Chekwaa faịlụ ma mechie ya.
Mgbe ahụ malitegharịa ihe nkesa Nginx ka itinye mgbanwe ndị dị n'elu.
$ sudo systemctl restart nginx
Ugbu a mepee ihe nchọgharị wee pịnye URL http://test.lab/status
ka ịlele ọkwa usoro PHP-FPM gị.
N'aka nke ọzọ, jiri mmemme curl dị ka ndị a, ebe ọkọlọtọ -L
na-akọwapụta ebe ibe dị.
$ curl -L http://test.lab/status
Site na ndabara, ibe ọkwa na-ebipụta naanị nchịkọta ma ọ bụ ọkwa dị mkpụmkpụ. Ka ilele ọkwa maka usoro ọdọ mmiri ọ bụla, gafere zuru na eriri ajụjụ, dịka ọmụmaatụ:
http://www.foo.bar/status?full
Ị nwere ike ịkọwapụta usoro mmepụta (JSON, HTML ma ọ bụ XML) dịka egosiri.
http://www.foo.bar/status?json&full http://www.foo.bar/status?html&full http://www.foo.bar/status?xml&full
N'okpuru bụ ụkpụrụ eweghachiri na php-fpm zuru oke, maka usoro ọ bụla:
- pid – PID nke usoro a.
- Ọkwa usoro steeti (anaghị arụ ọrụ, ịgba ọsọ, wdg.)
- oge mmalite – ụbọchị na oge usoro a malitere.
- bido kemgbe – ọnụọgụ sekọnd kemgbe usoro amalitela.
- arịrịọ – ọnụ ọgụgụ nke arịrịọ usoro a arịọla.
- Oge arịrịọ - oge n'ime µs nke arịrịọ a.
- Ụzọ arịrịọ – usoro arịrịọ (GET, POST, wdg.)
- riọ URI - jiri eriri ajụjụ rịọ URI.
- ogologo ọdịnaya - ogologo ọdịnaya nke arịrịọ (naanị na POST).
- onye ọrụ – onye ọrụ (PHP_AUTH_USER) (ma ọ bụ ‘-’ ma ọ bụrụ na edoghị ya).
- edemede – a na-akpọ isi edemede (ma ọ bụ ‘-’ ma ọ bụrụ na edoghị ya).
- Arịrịọ ikpeazụ cpu – %cpu ikpeazụ arịrịọ e riri (rịba ama na ọ na-abụkarị 0 ma ọ bụrụ na usoro ahụ anọghị na steeti Idle).
- ebe nchekwa arịrịọ ikpeazụ – oke ebe nchekwa arịrịọ ikpeazụ e riri (ọ na-abụkarị 0 ma ọ bụrụ na usoro ahụ anọghị na steeti Idle).
Nke ahụ bụ maka ugbu a! N'ime edemede a, anyị akọwala otu esi eme ka ibe ọnọdụ php-fpm dị n'okpuru sava weebụ Nginx. Jiri mpempe nzaghachi n'okpuru ịkọrọ anyị echiche gị.