Мақала анықтамалығы
🚀 Веб-сайттың динамикалық бетінде кенеттен 200-ден басқа күй коды пайда болғанда, PHP8.3-FPM қалай секундтарда өзін-өзі сауықтырады?
🔥 Операторлардың 90% білмейтін PHP8.3-FPM өмірді сақтайтын конфигурация! Monit динамикалық бетті өзін-өзі сауықтыру жүйесін практикалық оқыту.
PHP-FPM процесінің сақталуын бақылау жеткілікті деп ойлайсыз ба? Мүлдем қате!
Сервердегі PHP-FPM кенеттен бұзылып кеткенде, процестің аман қалуы қатерлі ісік ауруын өлшеу үшін термометрді пайдалану сияқты - бұл өлімге әкелетін мәселені мүлде анықтамайды.
Мен тым көп адамдардың күзетіп тұрғанын көрдімphp-fpm.sockМониторинг жайбарақат болды, нәтижесінде сайт әлдеқашан 404 қорымына айналды. Бүгін мен осы операция мен техникалық қызмет көрсету иллюзиясын бөліп, қанды шындықты көрсеткім келеді: тірі процесс ≠ қалыпты қызмет.
🌪️ Деструктивті сценарий: розетка қосылған, бірақ веб-сайт өлі
сенімдіЭлектрондық коммерцияВеб-сайттың мониторингі PHP-FPM процесі қалыпты жұмыс істеп тұрғанын көрсетті, бірақ пайдаланушылар төлем сәтсіздігіне шағымданды.
Ұзақ іздеуден кейін мен үшінші тарап кітапханасындағы жадтың ағып кетуі PHP процесінің тірі болуына әкеліп соқтырғанын, бірақ сұрауларды толығымен өңдей алмайтынын білдім.
Қазіргі уақытта тек розеткаларды анықтауға сену зомбидің импульсін тексерумен бірдей - сіз миды мүлдем таба алмайсыз.өлім.
💥 Танымдық қабілетін бұзатын қос өлтіретін бақылау шешімі
Бұл ескірген бір өлшемді бақылауды тастаңыз! Үздік сарапшылардың барлығы процесс деңгейі + бизнес деңгейінің қосарланған странгуляция стратегиясын пайдаланады.

Келесі конфигурация серверіңізді ақаулар туындаған кезде операциялық және техникалық қызмет көрсету персоналының төсектен тұруына қарағанда тезірек сауығуына мүмкіндік береді:
check process php8.3-fpm with pidfile /run/php/php8.3-fpm.pid
start program = "/usr/sbin/service php8.3-fpm start"
stop program = "/usr/sbin/service php8.3-fpm stop"
if failed unixsocket /run/php/php8.3-fpm.sock then restart
if failed
host www.chenweiliang.com
port 443
protocol https
request "/wp-login.php"
status = 200
hostheader www.chenweiliang.com
for 3 cycles
then restart
if 5 restarts within 5 cycles then exec "/usr/bin/systemctl restart hestia"
🔍 Параметрлерде жасырылған қауіпті мәліметтер
• hostheaderПараметрлер CDN/жүктемені теңестіру сценарийлеріндегі өмірді сақтайтын бойтұмарлар болып табылады. Оларсыз түнде көретін көзілдіріктері бар жасырын жауынгерді іздеу сияқты - сіз хост тақырыбының жоғалуынан туындаған тоқтатылған күйді ұстай алмайсыз.
• for 3 cyclesБұл буферлік кезең дизайны желі дірілінен туындаған жалған позитивтерді тамаша болдырмайды. Бұл бақылау жүйесіне амортизаторды орнату сияқты, қол сілкіп, ядролық түймені іске қоспас үшін.
• Соңғыexec "/usr/bin/systemctl restart hestia"Бұл өлтіретін ең соңғы қадам. PHP-FPM қатарынан 5 рет қайта тірілмегенде, мен кестені аударып, бүкіл хостинг тақтасын қайта іске қостым. Бұл мен Уолл-стрит сауда жүйесінің автоматты ажыратқыш механизмінен ұрлаған трюк.
🚨 Азап пен азаптан алынған сабақ: сізді сәтсіздікке ұшырататын 3 тұзақ
- SSL сертификатының алаяқтығы: жаңартудан кейін,
protocol httpsОны жазбау мониторингтің оны әдеттегідей дұрыс емес бағалауына әкеледі. Кейінірек мен Мониттің ескі нұсқасы сертификатты әдепкі бойынша тексермейтінін білдім, бұл жыл соңындағы бонусымды жоғалтты. - Кіру беті 401 тұзақ: кіру бетін бақылау кезінде қосуды ұмытпаңыз
Basic AuthenticationНәтижесінде әрбір сынақ қайта іске қосуды іске қосады. Бұл бақшаны өрт гидрантымен суару сияқты - жеткілікті күшті, бірақ мүлдем дұрыс емес - Журнал қара дыры: бір рет
/var/log/monit.logӨлшем 50G-ге жеткенде, біз кейбір ақымақ анықтау мерзімін 1 секундқа орнатқанын білдік. Есіңізде болсын, бақылау журналының өзі бақылауды қажет ететін объект болып табылады!
💡 Тексеру және жөндеу қадамдары
- Конфигурация синтаксисін тексеру:
monit -t - Шамадан тыс жүктеме конфигурациясы:
monit reload
Қорытынды тест
- Суицид сынағы: тікелей
kill -9PHP-FPM процесін жойып, бақылау журналындағы қайта тірілу жазбаларын қараңыз. Зомби фильмін көргендей әсер қалдырады! - Уларды инъекциялау: 503 күй кодын қайтару үшін кіру бетін әдейі өзгертіңіз және бақылау жүйесінің дәл шабуыл жасай алатынын тексеріңіз. Мен бұл әдісті «цифрлық вакцина» деп атаймын - бақылау жүйесінің иммундық реакциясын мәжбүрлеу үшін жүйеге алдын ала вирустың аз мөлшерін енгізу. Дабылдар қатты жыпылықтап, қызметтер өзін-өзі сауықтырғанда, сіз жанып тұрған код әлемінде аман қалудың ең сексуалды ерік-жігерін көресіз!
Hope Chen Weiliang блогы ( https://www.chenweiliang.com/ ) Веб-сайттың динамикалық бетін бақылау Monit бөліскен мақала күй коды 200 емес екенін анықтайды және php8.3-fpm автоматты түрде қайта іске қосылады, сізге пайдалы болуы мүмкін.
Осы мақаланың сілтемесін бөлісуге қош келдіңіз:https://www.chenweiliang.com/cwl-32764.html
Көбірек жасырын трюктердің құлпын ашу үшін🔑 Telegram каналымызға қосылыңыз!
Бөлісу және ұнаса лайк! Сіздің бөлісулеріңіз бен лайктарыңыз біздің тұрақты мотивациямыз болып табылады!