ວິທີການເປີດໃຊ້ແລະກວດສອບສະຖານະພາບ PHP-FPM ໃນ Nginx
PHP-FPM (FastCGI Process Manager) ແມ່ນການປະຕິບັດ PHP FastCGI ທາງເລືອກອື່ນທີ່ມາພ້ອມກັບຄຸນລັກສະນະພິເສດທີ່ມີປະໂຫຍດ ສຳ ລັບເວັບໄຊທ໌ທີ່ມີຂະ ໜາດ ໃດກໍ່ຕາມ, ໂດຍສະເພາະເວັບໄຊທີ່ໄດ້ຮັບການຈະລາຈອນສູງ.
ມັນຖືກນໍາໃຊ້ທົ່ວໄປໃນ LEMP (Linux Nginx MySQL/MariaDB PHP); Nginx ໃຊ້ PHP FastCGI ສຳ ລັບການຮັບໃຊ້ເນື້ອຫາ HTTP ແບບເຄື່ອນໄຫວໃນເຄືອຂ່າຍ. ມັນໄດ້ຖືກນໍາໃຊ້ເພື່ອໃຫ້ບໍລິການຫລາຍລ້ານ ຄຳ ຮ້ອງຂໍໃຊ້ PHP ສຳ ລັບຫລາຍຮ້ອຍເວັບໄຊທ໌ເທິງເວັບເຊີຟເວີໃນອິນເຕີເນັດ.
ໜຶ່ງ ໃນຄຸນລັກສະນະທີ່ເປັນປະໂຫຍດຂອງ php-fpm ແມ່ນ ໜ້າ ສ້າງສະຖານະພາບເຊິ່ງສາມາດຊ່ວຍທ່ານຕິດຕາມສຸຂະພາບຂອງມັນໄດ້. ໃນບົດຄວາມນີ້, ພວກເຮົາຈະສະແດງວິທີການເປີດໃຊ້ ໜ້າ ສະຖານະພາບ PHP-FPM ໃນ Linux.
ວິທີການເປີດໃຊ້ ໜ້າ ສະຖານະພາບ PHP-FPM ໃນ Linux
ທໍາອິດເປີດເອກະສານການຕັ້ງຄ່າ php-fpm ແລະເປີດໃຊ້ ໜ້າ ສະຖານະພາບດັ່ງທີ່ສະແດງ.
$ 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
ພາຍໃນເອກະສານນີ້, ຄົ້ນຫາແລະບໍ່ເອົາໃຈໃສ່ການປ່ຽນແປງຕົວປ່ຽນແປງ pm.status_path =/status
ດັ່ງທີ່ສະແດງຢູ່ໃນພາບ ໜ້າ ຈໍ.
ບັນທຶກການປ່ຽນແປງແລະອອກຈາກແຟ້ມ.
ຕໍ່ໄປ, ກວດເບິ່ງວ່າເອກະສານການຕັ້ງຄ່າຂອງ PHP-FPM ສຳ ລັບຂໍ້ຜິດພາດໃດໆໂດຍການ ດຳ ເນີນການ ຄຳ ສັ່ງດ້ານລຸ່ມ.
$ sudo php-fpm -t OR $ sudo php7.2-fpm -t
ຫຼັງຈາກນັ້ນໃຫ້ບໍລິການ PHP-FPM ເລີ່ມ ໃໝ່ ເພື່ອ ນຳ ໃຊ້ການປ່ຽນແປງ ໃໝ່ໆ.
$ sudo systemctl restart php-fpm OR $ sudo systemctl restart php7.2-fpm
ຕໍ່ໄປ, ດັດແກ້ເອກະສານການຕັ້ງຄ່າຂອງເຄື່ອງແມ່ຂ່າຍໃນຕອນຕົ້ນຂອງທ່ານ (virtual host) ແລະເພີ່ມບລັອກສະຖານທີ່ຢູ່ດ້ານລຸ່ມໃນນັ້ນ. ຕົວຢ່າງໃນລະບົບທົດສອບ, ເອກະສານ config ຂອງ server server ໃນຕອນຕົ້ນແມ່ນ /etc/nginx/conf.d/default.conf, ສຳ ລັບ site. test.lab.
$ sudo vim /etc/nginx/conf.d/default.conf
ນີ້ແມ່ນບລັອກສະຖານທີ່ທີ່ຈະຖືກເພີ່ມ. ໃນການຕັ້ງຄ່ານີ້, ພວກເຮົາໄດ້ອະນຸຍາດໃຫ້ເຂົ້າເຖິງສະຖານະພາບໃນຂະບວນການຂອງ PHP-FPM ພາຍໃນ localhost ໂດຍໃຊ້ ຄຳ ສັ່ງແນະ ນຳ 127.0.0.1 ສຳ ລັບເຫດຜົນດ້ານຄວາມປອດໄພ.
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; }
ບັນທຶກເອກະສານແລະປິດມັນ.
ຫຼັງຈາກນັ້ນ, ເລີ່ມຕົ້ນເຊີບເວີ Nginx ເພື່ອ ນຳ ໃຊ້ການປ່ຽນແປງຂ້າງເທິງ.
$ sudo systemctl restart nginx
ຕອນນີ້ເປີດ browser ແລ້ວພິມ URL http://test.lab/status
ເພື່ອເບິ່ງສະຖານະຂອງໂປຣແກຣມ PHP-FPM ຂອງທ່ານ.
ອີກທາງເລືອກ, ໃຊ້ໂປແກຼມ curl ດັ່ງຕໍ່ໄປນີ້, ບ່ອນທີ່ທຸງ -L
ລະບຸ ຕຳ ແໜ່ງ ຂອງ ໜ້າ.
$ curl -L http://test.lab/status
ໂດຍຄ່າເລີ່ມຕົ້ນ, ໜ້າ ສະຖານະພາບພຽງແຕ່ພິມສະຫຼຸບສັງລວມຫຼືສະຖານະສັ້ນ. ເພື່ອເບິ່ງສະຖານະພາບ ສຳ ລັບແຕ່ລະຂະບວນການສະລອຍນ້ ຳ, ໃຫ້ຂຽນ“ ເຕັມ” ໃສ່ສາຍ ຄຳ ຖາມ, ຍົກຕົວຢ່າງ:
http://www.foo.bar/status?full
ທ່ານສາມາດ ກຳ ນົດຮູບແບບຜົນຜະລິດ (JSON, HTML ຫຼື XML) ຕາມທີ່ສະແດງ.
http://www.foo.bar/status?json&full http://www.foo.bar/status?html&full http://www.foo.bar/status?xml&full
ຂ້າງລຸ່ມນີ້ແມ່ນຄ່າທີ່ຖືກສົ່ງກັບໃນ php-fpm ສະຖານະພາບເຕັມ, ສຳ ລັບແຕ່ລະຂະບວນການ:
- pid - PID ຂອງຂະບວນການ.
- ສະຖານະພາບຂັ້ນຕອນຂອງລັດ (ບໍ່ເຮັດວຽກ, ແລ່ນແລະອື່ນໆ).
- ເວລາເລີ່ມຕົ້ນ - ວັນທີແລະເວລາທີ່ຂັ້ນຕອນເລີ່ມຕົ້ນ.
- ເລີ່ມຕົ້ນຕັ້ງແຕ່ - ຈຳ ນວນວິນາທີນັບຕັ້ງແຕ່ຂັ້ນຕອນເລີ່ມຕົ້ນ.
- ຄຳ ຮ້ອງຂໍ - ຈຳ ນວນ ຄຳ ຮ້ອງຂໍທີ່ຂະບວນການໄດ້ຮັບໃຊ້.
- ໄລຍະເວລາການຮ້ອງຂໍ - ໄລຍະເວລາໃນ µs ຂອງ ຄຳ ຮ້ອງຂໍ.
- ວິທີການຮ້ອງຂໍ - ວິທີການຮ້ອງຂໍ (GET, POST, ແລະອື່ນໆ).
- ຮ້ອງຂໍ URI - ຮ້ອງຂໍ URI ດ້ວຍສາຍ ຄຳ ຖາມ.
- ຄວາມຍາວເນື້ອຫາ - ຄວາມຍາວຂອງ ຄຳ ຮ້ອງຂໍ (ພຽງແຕ່ກັບ POST).
- ຜູ້ໃຊ້ - ຜູ້ໃຊ້ (PHP_AUTH_USER) (ຫຼື '- ຖ້າບໍ່ໄດ້ ກຳ ນົດ).
- ອັກສອນ - ຕົວອັກສອນຫຼັກທີ່ເອີ້ນວ່າ (ຫຼື ‘-‘ ຖ້າບໍ່ໄດ້ ກຳ ນົດ).
- ຄຳ ຮ້ອງຂໍສຸດທ້າຍ cpu -% cpu ຄຳ ຮ້ອງຂໍສຸດທ້າຍທີ່ບໍລິໂພກ (ໃຫ້ສັງເກດວ່າມັນສະເຫມີ 0 ຖ້າຂະບວນການບໍ່ຢູ່ໃນສະຖານະການບໍ່ເຮັດວຽກ).
- ຄວາມຊົງ ຈຳ ຂອງການຮ້ອງຂໍຄັ້ງສຸດທ້າຍ - ຈຳ ນວນຄວາມ ຈຳ ສູງສຸດຂອງ ຄຳ ຂໍສຸດທ້າຍທີ່ບໍລິໂພກ (ມັນສະເຫມີ 0 ຖ້າຂະບວນການບໍ່ຢູ່ໃນສະຖານະການບໍ່ຢູ່).
ນັ້ນແມ່ນ ສຳ ລັບດຽວນີ້! ໃນບົດຂຽນນີ້, ພວກເຮົາໄດ້ອະທິບາຍວິທີການເປີດໃຊ້ ໜ້າ ສະຖານະພາບ php-fpm ພາຍໃຕ້ເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ Nginx. ໃຊ້ແບບຟອມ ຄຳ ເຫັນຂ້າງລຸ່ມເພື່ອແບ່ງປັນຄວາມຄິດຂອງທ່ານກັບພວກເຮົາ.