Как отключить XML-RPC в WordPress и не сломать мобильное приложение

otklyuchit xml rpc wordpress cover Без рубрики
Чек-лист зависимостей, плагин Disable XML-RPC, проверка xmlrpc.php и вход через пароль приложения. Почему xmlrpc_enabled не закрывает протокол полностью и что делать с Jetpack.

Хостинг прислал письмо: «срочно отключите xmlrpc.php, идут атаки». Вы каждый день публикуете с телефона и боитесь увидеть в приложении WordPress «XML-RPC services are disabled». Так случилось с предпринимателем: поставил плагин Disable XML-RPC после совета из интернета и на следующий день не смог войти с iPhone. За один вечер вы поймёте, нужен ли протокол, закроете дверь для ботов и проверите, что телефон показывает посты.

XML-RPC (удалённый протокол WordPress) – «задняя дверь» файла xmlrpc.php: через неё ломятся боты, а мобильное приложение и Jetpack стучатся именно туда. Фильтр xmlrpc_enabled в коде не закрывает её полностью – только методы с паролем. Сначала чеклист зависимостей, потом отключение плагином или через хостинг, затем вход через пароль приложения.

Я не советую «закрыть всё ради паранойи». Сначала разберитесь, чем пользуетесь с телефона, потом закройте дверь для ботов и проверьте ключ от приложения. Для салона или магазина на WordPress это меньше часа без программиста.

Из официальной документации WordPress (обновлена 20.08.2026): фильтр xmlrpc_enabled не отключает XML-RPC полностью – pingback и часть вызовов без пароля могут остаться. Мобильное приложение с 2025–2026 года умеет работать без XML-RPC через пароль приложения, но с урезанным функционалом – полный набор возможностей всё ещё требует протокол.

Разберите, зачем атакуют xmlrpc.php и нужен ли он вашему сайту

Схема на столе: зачем атакуют xmlrpc.php и нужен ли протокол сайту

Главная боль: письмо от хостинга звучит страшно, а вы не понимаете, что отключать. Файл xmlrpc.php – старый способ управлять сайтом удалённо: публиковать записи, получать pingback, подключать клиенты. С WordPress 3.5 он включён по умолчанию.

На практике боты бьют по xmlrpc.php методом system.multicall: за один запрос перебирают сотни паролей. Нагрузка растёт, хостинг блокирует сайт. С 2016 года основной путь – REST API (современный интерфейс обмена данными), но xmlrpc.php всё ещё открыт «на всякий случай».

Типичная ошибка – ставить тяжёлый плагин безопасности и не понимать, что он режет. Отметьте галочками, что реально работает:

  • Официальное мобильное приложение WordPress
  • Jetpack (статистика, защита, синхронизация)
  • Старые десктоп-клиенты вроде Windows Live Writer
  • Pingback и trackback (сейчас почти никто не использует)
  • Удалённые бэкап-плагины через XML-RPC

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

Проверьте, открыт ли XML-RPC прямо сейчас

Чеклист проверки xmlrpc.php на журнальном столике в гостиной

Без проверки вы не узнаете, сработали ли правки. Откройте в браузере вашсайт.ru/xmlrpc.php. Фраза «XML-RPC server accepts POST requests only» значит: дверь открыта, браузер шлёт GET, а сервер ждёт POST.

  1. Загляните в письма и панель хостинга – часто там строки про атаки на xmlrpc.php.
  2. Если стоит Jetpack – в справке тот же тест: ответ «accepts POST requests only» значит, файл жив.
  3. После отключения адрес должен отдать 403, «Method not allowed» или «XML-RPC services are disabled».

Не путайте белую страницу с успехом. Запишите, что видели до правок – это ваш скриншот «до» для сравнения. Часто ломается не сам сайт, а привычка проверять только главную страницу и забывать про служебный адрес xmlrpc.php.

Выберите способ отключения под свой уровень

Три карточки способов отключения XML-RPC на светлом столе

Боль «я не программист» решается плагином с wordpress.org. Боль «закрыть намертво» – блокировка на сервере или пустой список методов. Сравнение:

Способ Кому подходит Насколько закрывает Риск для приложения
Плагин Disable XML-RPC Без FTP Полное отключение из админки Без пароля приложения вход пропадёт
Код в mu-plugins Доступ к файлам хостинга xmlrpc_enabled – не 100% Как у плагина
.htaccess или тикет в поддержку Nginx/Apache Файл недоступен снаружи Jetpack и старое приложение не пройдут

Новичку – используйте плагин Disable XML-RPC: пять минут, откат одной кнопкой. Пошагово:

  1. «Плагины → Добавить новый» → Disable XML-RPC → Установить → Активировать.
  2. Снова откройте вашсайт.ru/xmlrpc.php – сообщение об отключении или 403.
  3. Не ставьте второй плагин «против XML-RPC» – типичная ошибка, ломается вход.
  4. Для Jetpack при атаках – whitelist подсети Automattic 192.0.64.0/18 через хостинг, не тотальное отключение.
  5. Полное отключение методов – фильтр xmlrpc_methods с пустым массивом в mu-plugins, не в functions.php темы.

Вердикт: код в functions.php дочерней темы исчезнет при смене темы. Плагин или mu-plugins держат настройку стабильнее.

Настройте мобильное приложение без XML-RPC

Главная боль: закрыли дверь, телефон не пускает. С 2025–2026 официальное приложение входит без XML-RPC через пароль приложения – отдельный ключ, не основной пароль админки.

После отключения видны посты и страницы, но медиабиблиотека и часть настроек могут пропасть – разработчики пишут об этом в release notes на GitHub. Это компромисс: безопасность важнее полного меню в телефоне.

*Instagram,Facebook (принадлежит компании Meta, признанной экстремистской и запрещённой на территории РФ)
  1. «Пользователи → Профиль» → «Пароли приложений» → название («iPhone») → «Добавить».
  2. Скопируйте пароль сразу – второй раз не покажут.
  3. В приложении удалите сайт и добавьте заново с паролем приложения.
  4. Откройте записи – черновики и посты на месте, проверка пройдена.
  5. Нужен полный функционал – оставьте XML-RPC и закройте ботов через whitelist Jetpack.

Типичная ошибка: Disable XML-RPC без пароля приложения. План B: деактивировать плагин, войти как раньше, повторить с паролем. На форумах wordpress.org та же история: «Required XML-RPC methods are missing» лечится не переустановкой приложения, а паролем приложения или временным откатом плагина.

Схема без паники: чек-лист зависимостей → отключение → проверка xmlrpc.php → пароль приложения → тест постов в телефоне. Если на каком-то шаге стопор – откатываете только последний шаг, а не весь сайт.

Убедитесь, что сайт защищён, а нужные сервисы живы

Критерий успеха: вашсайт.ru/xmlrpc.php отдаёт 403 или «services are disabled», либо приложение входит через пароль приложения. Jetpack и бэкапы не должны отвалиться.

Что проверить Ожидали Если не так
xmlrpc.php в браузере 403 / disabled Плагин не активен или кэш – очистите
Мобильное приложение Посты открываются Пароль приложения или отключите плагин
Jetpack Статус «Подключён» Нельзя резать XML-RPC полностью – whitelist IP
Фронт сайта Грузится как раньше Откатите дублирующий плагин

В реальном проекте клиент забыл про ночной бэкап – тот перестал стучаться на xmlrpc.php. Проверьте логи бэкапа на следующий день. Ещё один частый сюрприз – CDN или кэш хостинга: вы видите старый ответ «accepts POST», хотя плагин уже активен. Очистите кэш в панели и повторите тест в режиме инкогнито.

Когда всё сходится – у вас закрыта лазейка для брутфорса через system.multicall, телефон пускает к контенту, а Jetpack (если нужен) остаётся на whitelist. Это и есть success criteria из чек-листа: либо 403 на xmlrpc.php, либо рабочее приложение с паролем.

Нужна помощь с безопасностью WordPress – напишите через форму или в Telegram. Больше гайдов – в статьях; делегировать настройку – услуги.

Материал проверен: Андрей Дикий (создаёт сайты и продвигает их статьями, SEO/GEO).
Достоверность данных: developer.wordpress.org (хук xmlrpc_enabled, 20.08.2026), wordpress.org/plugins/disable-xml-rpc, jetpack.com/support/jetpack-and-xml-rpc, release notes WordPress-iOS на GitHub (#25183, #25382), rtfm.wiki (whitelist 192.0.64.0/18); частотность – Яндекс Вордстат на 2026-09-05 (MCP недоступен, LSI через SERP).

Частые вопросы

Можно ли удалить файл xmlrpc.php с сервера?

Не стоит: при обновлении WordPress файл вернётся. Безопаснее отключить плагином или правилом на сервере.

Безопасно ли отключать XML-RPC на сайте салона?

Да, если нет Jetpack, старых клиентов и бэкапов через протокол. Для телефона создайте пароль приложения – посты останутся без открытой двери для ботов.

Сломается ли приложение WordPress после отключения?

Без пароля приложения – да, ошибка про disabled services. С паролем (2025–2026) вход работает, но функции урезаны. Полный набор требует XML-RPC.

Чем xmlrpc.php отличается от REST API?

REST API – современный обмен данными для редактора и плагинов. xmlrpc.php – наследие старых клиентов. Атаки чаще бьют по xmlrpc.php.

Хостинг сам отключил xmlrpc.php – что делать?

Проверьте приложение и Jetpack. Если не работает – пароль приложения или тикет с просьбой открыть доступ для IP Jetpack, не для всего интернета.

Ошибка «Required XML-RPC methods are missing» – быстрый откат?

С компьютера: «Плагины» → деактивируйте Disable XML-RPC → обновите приложение → создайте пароль приложения → включите защиту снова.

Нужен ли XML-RPC, если публикую только из браузера?

Нет. Без телефона, Jetpack и pingback – закрывайте xmlrpc.php и проверьте адрес в браузере. Снимете нагрузку и закроете точку для брутфорса.

*Instagram,Facebook (принадлежит компании Meta, признанной экстремистской и запрещённой на территории РФ)
Новый маркетинг с искусственным интеллектом
Добавить комментарий