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

Что такое XML-RPC и почему его отключение важно для безопасности WordPress

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

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

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

XML-RPC активен по умолчанию во всех актуальных версиях WordPress. Чтобы проверить, доступен ли он, откройте в браузере URL вашего сайта с добавлением /xmlrpc.php, например:

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

Вы увидите сообщение XML-RPC server accepts POST requests only. или аналогичное, если протокол включён. Если страница возвращает ошибку 403 или 404, значит XML-RPC отключён или заблокирован.

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

1. Отключение через functions.php (кодом)

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

function wpmonitor_disable_xmlrpc() {
    return false;
}
add_filter('xmlrpc_enabled', 'wpmonitor_disable_xmlrpc');

Этот фильтр полностью деактивирует XML-RPC API, что предотвратит любые попытки взаимодействия через него.

2. Блокировка доступа через .htaccess

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

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

Это полностью заблокирует все HTTP-запросы к XML-RPC API.

3. Использование специализированных плагинов

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

  • Disable XML-RPC — простой плагин для отключения протокола;
  • Stop XML-RPC Attack — блокирует попытки атак через XML-RPC;
  • Clearfy Pro — в этом плагине есть опция отключения XML-RPC вместе с другими фичами для оптимизации и безопасности WordPress. Подробнее на wpshop.ru.

Плагины позволяют быстро и без риска ошибок отключить XML-RPC, а также дополнительно защитить сайт.

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

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

REST API поддерживает аутентификацию через OAuth или JWT, что делает его лучше защищённым от несанкционированного доступа.

Пример кода для проверки REST API на сайте:

fetch('https://ваш-сайт.ru/wp-json/wp/v2/posts')
  .then(response => response.json())
  .then(data => console.log(data));

REST API можно использовать для создания собственных плагинов и интеграций, заменяющих функциональность XML-RPC с более тонкой настройкой безопасности.

Рекомендации по безопасности при отключении XML-RPC

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

Также рекомендуем:

  • Регулярно обновлять WordPress, темы и плагины для устранения уязвимостей;
  • Использовать сложные пароли и двухфакторную аутентификацию;
  • Мониторить логи сервера на предмет подозрительной активности;
  • Применять плагины безопасности, например Clearfy Pro, который поможет дополнительно защитить сайт и оптимизировать работу.
WooCommerce: не отображается атрибут товара после обновления — как исправить
16.05.2026
Как автоматизировать удаление старых записей в WordPress через WP-Cron
29.03.2026
WooCommerce: не отображается цена товара после обновления — как исправить
24.04.2026
Как отловить и исправить ошибки PHP в WordPress
01.04.2026
Как отключить XML-RPC в WordPress для повышения безопасности
05.03.2026