WordPress wp-admin 503 Service Temporarily Unavailable

Столкнулся сейчас с проблемой на одном из ранее обслуживаемых сайтов, связанной с входом в админку WordPress. Страница авторизации wp-admin отображается, а вот на проходе авторизации, либо при клике на «забыли пароль» и прочих манипуляция сайт моментально выдавал 503 Service Temporarily Unavailable

Ввиду того, что системный администратор из меня так себе (впрочем, как и бэкендщик), то начал искать решение на просторах интернета. Большинство источников выдают 2 основных решения:
1) Отключить по очереди все плагины, используя FTP
2) Удалить тему, сохранив ее предварительно у себя на компе
…но не тут-то было. Проблема осталась. Написал в тех поддержку следующее письмо (хостинг-провайдер финский):

Hello.
I’m a administrator of site http://********.fi which located on your hosting. There was a problem with logging in to admin panel (site using CMS WordPress).
I doing next steps:
1) go to http://********/wp-admin
2) Enter the username and password
3) Get an error 503 Service Temporarily Unavailable

I’m already tried to disable plugins and custom themes, but error still appear.
Can it be DDos-attack? Or it can be hosting limitations? Could you help me resolve this problem?

На что был получен ответ:

Hello,

The problem may be too old PHP-version (5.2). Can we upgrade your PHP-version to newer, recommended version is 7.3?

В принципе, да. Есть в этом смысл. Обновили мы PHP, но теперь у меня вообще страница админки (даже без авторизации) начала отдавать HTTP ERROR 500 … твою же мать.

Включив WP_DEBUG в wp-config.php получаю ряд ошибок, в том числе:

Порывшись на форумах и соотнеся друг с другом некоторые функции в разных версиях WP, я нашел в чем была беда. В файле wp-include/user.php есть функция:

Так вот в теле первого условия необходимо объявить переменную массивом ($credentials = array();):

Данное действие решило проблему со входом в админку вордпреса. После чего я последовательно обновил сам wordpress и все плагины, устранив, соответственно, остальные ворнинги, связанные с deprecated функциями. Правда один плагин пришлось обновить вручную. Это плагин Rus-to-lat, который ругался следующим образом:

Идем /wp-content/plugins/rustolat и открываем для редактирования rus-to-lat.php, ищем

и меняем на:

Связан этот баг с уровнем доступа пользователя и этот баг может встречаться и других плагинах (это если в двух словах).

Собственно, в моем случае решение было найдено вот такое. Желаю всем быстрых фиксов)

 

Добавить комментарий

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