WordPress падает от множества запросов к admin-ajax.php Как найти и устранить причину?

Ссылка скопирована
1 ответ

Сайт acshop.fi установлен Wp на vps 4 ядра, 6 гб оперативки, работает на php 8.2 openlitespeed
Load average в среднем не превышает - 1
Сайт часто падает с ошибкой 500, la поднимается в это время выше 1-2 в htop отображается много процессов с URL admin-ajax

77.91.103.69 это ip моей вирт машины
в это время в логе много запросов на admin-ajax.php на один и тот же URl

"77.91.103.69 - - [10/Mar/2024:23:36:05 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:04 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:05 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:04 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:06 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:06 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:07 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi""

"77.91.103.69 - - [10/Mar/2024:23:36:05 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:04 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:05 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:04 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:06 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:06 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi"" "77.91.103.69 - - [10/Mar/2024:23:36:07 +0200] "GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1" 400 21 "-" "WordPress/6.4.3; https://acshop.fi""

Error log

2024-03-10 23:45:59.268872 [INFO] [295930] [77.91.103.69:43646] Content len: 0, request line: 'GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1' 2024-03-10 23:45:59.268892 [INFO] [295930] [77.91.103.69:43646#acshop.fi] HttpExtConnector state: 8, request body sent: 0, response body size: -2, response body sent:0, left in buffer: 0, attempts: 1. 2024-03-10 23:46:00.032278 [NOTICE] [295929] [77.91.103.69:55192#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:00.085578 [NOTICE] [295932] [77.91.103.69:52874#acshop.fi] ExtConn timed out while processing. 2024-03-10 23:46:00.085724 [NOTICE] [295932] [77.91.103.69:52888#acshop.fi] ExtConn timed out while processing. 2024-03-10 23:46:01.041386 [NOTICE] [295929] [77.91.103.69:55236#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:01.041784 [NOTICE] [295929] [77.91.103.69:38418#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:01.056121 [INFO] [295932] [77.91.103.69:52874#acshop.fi] Connection idle time too long: 61 while in state: 6 watching for event: 0, close! 2024-03-10 23:46:01.056196 [INFO] [295932] [77.91.103.69:52874] Content len: 0, request line: 'GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1' 2024-03-10 23:46:01.056228 [INFO] [295932] [77.91.103.69:52874#acshop.fi] HttpExtConnector state: 8, request body sent: 0, response body size: -2, response body sent:0, left in buffer: 0, attempts: 1. 2024-03-10 23:46:01.074698 [NOTICE] [295930] [77.91.103.69:52900#acshop.fi] ExtConn timed out while processing. 2024-03-10 23:46:01.481786 [INFO] [295932] [77.91.103.69:52888#acshop.fi] Connection idle time too long: 61 while in state: 6 watching for event: 0, close! 2024-03-10 23:46:01.481913 [INFO] [295932] [77.91.103.69:52888] Content len: 0, request line: 'GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1' 2024-03-10 23:46:01.481934 [INFO] [295932] [77.91.103.69:52888#acshop.fi] HttpExtConnector state: 8, request body sent: 0, response body size: -2, response body sent:0, left in buffer: 0, attempts: 1. 2024-03-10 23:46:02.044975 [NOTICE] [295929] [77.91.103.69:38448#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:02.045091 [NOTICE] [295929] [77.91.103.69:38432#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:02.051262 [NOTICE] [295931] [77.91.103.69:56460#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock.

2024-03-10 23:45:59.268872 [INFO] [295930] [77.91.103.69:43646] Content len: 0, request line: 'GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1' 2024-03-10 23:45:59.268892 [INFO] [295930] [77.91.103.69:43646#acshop.fi] HttpExtConnector state: 8, request body sent: 0, response body size: -2, response body sent:0, left in buffer: 0, attempts: 1. 2024-03-10 23:46:00.032278 [NOTICE] [295929] [77.91.103.69:55192#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:00.085578 [NOTICE] [295932] [77.91.103.69:52874#acshop.fi] ExtConn timed out while processing. 2024-03-10 23:46:00.085724 [NOTICE] [295932] [77.91.103.69:52888#acshop.fi] ExtConn timed out while processing. 2024-03-10 23:46:01.041386 [NOTICE] [295929] [77.91.103.69:55236#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:01.041784 [NOTICE] [295929] [77.91.103.69:38418#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:01.056121 [INFO] [295932] [77.91.103.69:52874#acshop.fi] Connection idle time too long: 61 while in state: 6 watching for event: 0, close! 2024-03-10 23:46:01.056196 [INFO] [295932] [77.91.103.69:52874] Content len: 0, request line: 'GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1' 2024-03-10 23:46:01.056228 [INFO] [295932] [77.91.103.69:52874#acshop.fi] HttpExtConnector state: 8, request body sent: 0, response body size: -2, response body sent:0, left in buffer: 0, attempts: 1. 2024-03-10 23:46:01.074698 [NOTICE] [295930] [77.91.103.69:52900#acshop.fi] ExtConn timed out while processing. 2024-03-10 23:46:01.481786 [INFO] [295932] [77.91.103.69:52888#acshop.fi] Connection idle time too long: 61 while in state: 6 watching for event: 0, close! 2024-03-10 23:46:01.481913 [INFO] [295932] [77.91.103.69:52888] Content len: 0, request line: 'GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock&wms_nonceMoDoiIoDom1%C2%A7092837465 HTTP/1.1' 2024-03-10 23:46:01.481934 [INFO] [295932] [77.91.103.69:52888#acshop.fi] HttpExtConnector state: 8, request body sent: 0, response body size: -2, response body sent:0, left in buffer: 0, attempts: 1. 2024-03-10 23:46:02.044975 [NOTICE] [295929] [77.91.103.69:38448#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:02.045091 [NOTICE] [295929] [77.91.103.69:38432#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock. 2024-03-10 23:46:02.051262 [NOTICE] [295931] [77.91.103.69:56460#acshop.fi] No request delivery notification has been received from LSAPI application, possible dead lock.

при этом service lsws reload при этом не помогает.

Список плагинов :
Contact Form 7
Converter for Media
Google Analytics for WooCommerce
 Hide Price and Add to Cart Button
 Laskuhari for WooCommerce
Asetukset  
LiteSpeed Cache
 Loco Translate
 Paytrail for WooCommerce
 Posti Shipping
 Product Prices by User Roles for WooCommerce
Products and Variations Visibility for WooCommerce
 Really Simple SSL
Slider Revolution
WooCommerce
 WooCommerce Carrier Agents
 WooCommerce Shipit
 WooCommerce Shipit Pro
 WooCommerce Shipping & Tax
Woodmart Core
 WooPayments
WP Mail Logging
 WP Mail SMTP
WPBakery Page Builder
Интеграция МойСклад и WooCommerce Wordpress
Интеграция МойСклад и WooCommerce Дополнение Группа

  Heartbeat Control by WP Rocket установил, проявление ошибки немного изменилось, стало отображаться, ошибка от WP на главной странице

 
Я думаю это из-за плагина, но не знаю из-за какого, и как его найти, не подскажете ?

"GET /wp-admin/admin-ajax.php?action=wms_checking_for_hang_ups_stock

похоже на woocommerce, но точно не знаю

Дополнительные вопросы

Это Ваш IP 77.91.103.69?

  • Михаил Р., да
  • Параметр wms_checking_for_hang_ups_stock намекает, что это что-то складское. Пробовали "Интеграция МойСклад" отключать?
  • mefik26, буду пробовать, спасибо
  • Ответы:

    Это не из-за WC.
    Потенциальные виновники

    • Google Analytics for WooCommerce
    • Heartbeat Control by WP Rocket
    • Slider Revolution

    (точнее не столько сами плагины, сколько их настройки)

    Первые два в принципе не нужны, так же как и некоторые другие.

    А вообще по этому набору видно, что сайт сделан "на коленке" не специалистом и посему там много чего может быть.

    •   Heartbeat Control by WP Rocket установил, проявление ошибки немного изменилось, стало отображаться, ошибка от WP на главной странице
    • и сейчас по поиску содержимого смотрю в плагинах wms ... что фигурирует в логах, используется в плагинах woocommerce
    • 4upik, понятно что это какое-то дополнение к WC, но там столько хлама (часть которого даже не гуглиться), что вообще удивительно что сайт работает.
    Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Елена Вебер Ответ

    Много запросов к admin-ajax.php почти всегда создаёт конкретный плагин, тема или внешний бот, который дёргает AJAX endpoint. Нужно не увеличивать сервер вслепую, а найти action, который вызывается в этих запросах.

    Сначала посмотрите access log целиком: у admin-ajax.php обычно есть параметр action=.... Например:

    POST /wp-admin/admin-ajax.php?action=wc_fragments

    POST /wp-admin/admin-ajax.php?action=wc_fragments

    Если action не виден в логе, временно добавьте логирование:

    add_action('admin_init', function () {
        if (defined('DOING_AJAX') && DOING_AJAX) {
            error_log('AJAX action: ' . ($_REQUEST['action'] ?? 'no_action'));
        }
    });

    add_action('admin_init', function () { if (defined('DOING_AJAX') && DOING_AJAX) { error_log('AJAX action: ' . ($_REQUEST['action'] ?? 'no_action')); } });

    Дальше ищите по action:

    grep -R "action_name" wp-content/plugins wp-content/themes

    grep -R "action_name" wp-content/plugins wp-content/themes

    Частые причины:

    • WooCommerce cart fragments;
    • фильтры товаров;
    • поиск/autocomplete;
    • плагины статистики;
    • heartbeat;
    • боты, которые POST-ят форму;
    • кэш, который не кэширует AJAX.

    Если запросы идут с IP самого сервера, это может быть wp-cron, плагин, который вызывает свой же сайт, или loopback-запросы. Проверьте cron-события и плагины импорта/синхронизации.

    После выявления action решение будет разным: отключить cart fragments на страницах без корзины, ограничить heartbeat, добавить rate limit, закрыть endpoint от ботов, оптимизировать SQL внутри обработчика или заменить AJAX на REST/кэшированный ответ.

    Итог: ключевой шаг — найти action. Без этого оптимизация admin-ajax будет гаданием.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно