Как удалить или отключить XML-RPC в WordPress для повышения безопасности

XML-RPC — это протокол, который позволяет удалённо взаимодействовать с сайтом WordPress, например, через мобильные приложения или внешние сервисы. Но в то же время XML-RPC часто становится причиной уязвимостей и векторов атак, таких как перебор паролей (Brute Force) и DDoS-атаки. Поэтому многие владельцы сайтов хотят отключить или полностью удалить поддержку XML-RPC для повышения безопасности.

Что такое XML-RPC и зачем его отключать

XML-RPC был введён в WordPress для поддержки удалённого взаимодействия с сайтом. Он позволяет:

  • Публиковать записи из внешних приложений;
  • Управлять комментариями и контентом;
  • Использовать мобильные клиенты и десктопные редакторы.

Однако, в современных реалиях многие сайты не используют эту функциональность, а сам протокол часто становится целью злоумышленников. Поэтому отключение XML-RPC помогает:

  • Снизить риск перебора паролей, так как XML-RPC допускает многократные попытки авторизации;
  • Уменьшить нагрузку на сервер от нежелательных запросов;
  • Повысить общую безопасность сайта.

Как проверить, активен ли XML-RPC на вашем сайте WordPress

XML-RPC по умолчанию доступен по адресу https://ваш-сайт.ru/xmlrpc.php. Чтобы проверить, работает ли он, можно просто открыть этот URL в браузере или выполнить curl-запрос:

curl -I https://ваш-сайт.ru/xmlrpc.php

Если в ответе приходит статус 200 и в теле есть XML, значит, протокол активен. Если приходит 403 или 404, значит, он отключен или заблокирован.

Способы отключения XML-RPC в WordPress

Отключение через файл functions.php темы

Самый простой способ — добавить в functions.php вашей активной темы следующий код, который отключит обработку запросов XML-RPC:

function clearfy_disable_xmlrpc() {
    add_filter('xmlrpc_enabled', '__return_false');
}
add_action('init', 'clearfy_disable_xmlrpc');

Этот код использует встроенный фильтр WordPress xmlrpc_enabled, который возвращает false, отключая поддержку XML-RPC.

Полное блокирование доступа через .htaccess

Если ваш сайт работает на Apache, можно полностью запретить доступ к xmlrpc.php на уровне веб-сервера. Для этого добавьте в .htaccess корневой директории сайта следующий код:

<Files xmlrpc.php>
    Order Deny,Allow
    Deny from all
</Files>

Этот способ гарантирует, что любые запросы к xmlrpc.php будут блокированы ещё до попадания в WordPress.

Отключение через плагины безопасности

Многие популярные плагины безопасности для WordPress имеют функцию отключения XML-RPC. Например:

  • Wordfence Security — в настройках есть опция блокировки XML-RPC;
  • iThemes Security — позволяет отключить или ограничить доступ;
  • Disable XML-RPC — специализированный плагин, который отключает XML-RPC одним кликом.

Использование плагинов удобно, если вы не хотите править код или .htaccess вручную.

Как в Clearfy отключить XML-RPC с помощью собственного кода

Если вы хотите интегрировать отключение XML-RPC в свой плагин или тему, можно оформить код с префиксом clearfy_ для удобства поддержки:

function clearfy_disable_xmlrpc() {
    add_filter('xmlrpc_enabled', '__return_false');
}
add_action('init', 'clearfy_disable_xmlrpc');

Добавьте эту функцию в файл вашего плагина или functions.php. Это позволит быстро и безопасно отключить XML-RPC без сторонних плагинов.

Проверка отключения и тестирование

После внесения изменений обязательно проверьте, что XML-RPC действительно отключён. Для этого:

  1. Попробуйте открыть https://ваш-сайт.ru/xmlrpc.php в браузере — должна быть ошибка 403 или 404;
  2. Используйте curl или другие инструменты для отправки XML-RPC-запросов — они должны блокироваться;
  3. Просмотрите логи сервера, чтобы убедиться, что запросы не доходят или отклоняются.

Если вы используете мобильные приложения WordPress или внешние сервисы, которые зависят от XML-RPC, учтите, что после отключения они перестанут работать.

Альтернативные методы удалённого управления сайтом

Если вам всё же нужно удалённое управление сайтом, но без уязвимостей XML-RPC, рассмотрите современные REST API WordPress. Он более безопасен и гибок. Для работы с REST API можно использовать OAuth или другие методы аутентификации, а также создавать собственные эндпоинты.

Для примера добавим простой REST API эндпоинт с префиксом clearfy_:

add_action('rest_api_init', function () {
    register_rest_route('clearfy/v1', '/hello', array(
        'methods' => 'GET',
        'callback' => 'clearfy_rest_hello',
    ));
});

function clearfy_rest_hello() {
    return 'Привет от Clearfy REST API!';
}

Этот эндпоинт доступен по адресу /wp-json/clearfy/v1/hello и возвращает простое текстовое сообщение.

Заключение: что выбрать — отключение или ограничение XML-RPC

Если XML-RPC не используется на вашем сайте, лучше всего полностью его отключить — это повысит безопасность и снизит нагрузку. Отключение можно сделать с помощью кода, .htaccess или плагинов. Если же нужно сохранить функционал, рассмотрите ограничение доступа по IP или использование современных API.

В любом случае, следите за безопасностью своего сайта и регулярно обновляйте WordPress и плагины.

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как удалить повторяющиеся теги в WooCommerce без риска для сайта
11.05.2026
Как удалить или изменить slug в WordPress без потери SEO
20.11.2025
Как удалить или изменить регистрацию пользователей WordPress без рисков
04.01.2026
Как удалить редундантные шорткоды в WordPress: практическое руководство
24.02.2026
Как удалить или изменить выставку точки (excerpt) в WordPress без потери данных
27.01.2026
×
Оптимизируй свой сайт!

Скидка -15% на премиум плагин Clearfy Pro

Купить плагин сейчас ⋙