TechBlogSD - Все для WordPress и WEB разработки
WEB и WordPress инструкции, новости, обзоры тем и плагинов

Исправить ошибку WordPress. Доступ к информации об авторе через REST API запрещен

56

WordPress с самого начала будет выглядеть проще в использовании. Но когда возникает ошибка, обычным пользователям сложно ее понять и устранить. Большинство из нас используют сложные плагины безопасности и кеширования, не зная, как именно они работают. Это затруднит процесс устранения неполадок, поскольку плагины, как правило, вызывают проблемы, чем предполагаемые функции.

Ошибки сканирования в Google Search Console

Недавно мы обнаружили, что многие ошибки сервера сообщаются в разделе «Ошибки сканирования» консоли поиска Google. Все перечисленные URL-адреса странным образом отображаются с внутренней ошибкой сервера 500, тогда как на стороне сервера проблем не было.

Исправить ошибку WordPress. Доступ к информации об авторе через REST API запрещен

URL-адреса с пользователями заблокированы

Мы заметили, что все перечисленные URL содержат слово «пользователи» в URL. При нажатии на URL-адрес отображалась ошибка WordPress «Доступ к информации об авторе через REST API запрещен».

Исправить ошибку WordPress. Доступ к информации об авторе через REST API запрещен

URL-адрес запрещен из-за подключаемого модуля безопасности

Устранение ошибки

Мы начали разбираться в ошибке, и началась сложная часть устранения неполадок. В качестве первого шага в устранении любой ошибки WordPress мы проверили установленные плагины. Затем просканировал записи .htaccess и понял, что ошибка могла исходить от плагина безопасности.

После небольшого поиска в Google мы обнаружили отчет об ошибке Github, в котором указывалось, что ошибка исходит от одного плагина безопасности и брандмауэра WordPress.

Поиск первопричины

В основном плагин безопасности предлагает возможность прекратить просмотр URL-адресов, запрашивая имена пользователей. Это было предназначено для блокировки ботов, пытающихся получить с сайта информацию об авторе и других пользователях. Эта функция реализована с помощью функции PHP в файле плагина «/wp-content/plugins/all-in-one-wp-security-and-firewall/other-includes/wp-security-stop-users-enumeration.php».

<?php /* Here is the comment section */ if (!is_admin()) { if (preg_match('/(wp-comments-post)/', $_SERVER['REQUEST_URI']) === 0) { if (!empty($_POST['author'])) { wp_die('Accessing author info via link is forbidden'); } } if (preg_match('/author=([0-9]*)/', $_SERVER['QUERY_STRING']) === 1) wp_die('Accessing author info via link is forbidden'); add_filter('redirect_canonical', 'll_detect_enumeration', 10, 2); } add_filter('redirect_canonical', 'll_detect_enumeration', 10, 2); function ll_detect_enumeration($redirect_url, $requested_url) { if (preg_match('/?author(%00[0%]*)?=([0-9]*)(/*)/', $requested_url) === 1 | isset($_POST['author'])) { wp_die('Accessing author info via link is forbidden'); } else { return $redirect_url; } }

К сожалению, это блокирует реальные URL-адреса с такими словами, как «пользователи». Перечисление пользователей через функцию WordPress REST API было добавлено в плагин с версии 4.2.9.

Исправить ошибку WordPress. Доступ к информации об авторе через REST API запрещен

Перечисление пользователей добавлено в последней версии

Исправление ошибки

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

Здесь мы объясняем с помощью того же универсального плагина безопасности и брандмауэра WordPress, который вызвал проблему. Перейдите в меню «Безопасность WP> Разное> Перечисление пользователей» и снимите флажок «Отключить перечисление пользователей».

Исправить ошибку WordPress. Доступ к информации об авторе через REST API запрещен

Возможность перечисления пользователей в WordPress All In One Security Plugin

Заключение

После удаления опции перечисления пользователей URL-адреса с ошибкой 500 работают нормально. Поэтому, когда вы видите ошибку «Доступ к информации об авторе через REST API запрещен», сначала проверьте раздел журнала изменений недавно обновленного плагина. Особенно обратите внимание, есть ли у установленного на вашем сайте плагина безопасности возможность блокировки пользователей с помощью REST API. Это поможет вам сузить проблему и найти плагин, вызывающий ошибку.

Источник записи: www.webnots.com
Leave A Reply

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее