Помогите устранить ошибку WP - Catchable fatal error

123
K
На сайте с 03.06.2015
Offline
45
#11

Да пишут много, кроме одного: кто изобрел такой маразм, когда функция обнаружив ошибку возвращает инстась класса обработки ошибок и скрипт хреначит дальше как ни в чем не бывало. Ну то есть плугин может быть написан криво, да, без должных проверок, но все равно это какая-то уродская логика.

Связь с бд вот такая:

This error occurs when you make a post that has no category

Для тех кто понимает в терминологии ВП все должно стать понятным. Без этой терминологии смысл фразы таков: ошибка возникает при попытке обработать сиротское отношение. Сиротское, или потерянное отношение это часть кортежа которую невозможно соединить в целый кортеж из-за отсутствия данных.

Например у этого поста есть связь с темой, у темы есть связь с рубрикой. Достаточно знать id поста, чтобы восстановить его отношение полностью. Если у поста не будет данных в каком-нибудь thread_id или там category_id, то он осиротеет, останется без "родителя" то есть.

У WE_Error есть проперть $errors в которой массив сообщений об ошибках. Следовательно ее можно вывести и посмотреть что там пишут. Или да, попробовать воткнуть error_reporting(-1);

MYSQL PHP JS HTML CSS SEO TXT США СССР
SeVlad
На сайте с 03.11.2008
Offline
1609
#12
=Lexx=:
Потом взял бекап бд на момент, когда сайт работал нормально (пара дней назад) и залил. Сайт восстановил работу.

Сейчас повторил то же самое - сайт снова заработал. Но есть подозрение, что через 2-3 дня снова уйдет в даун, т.к. ошибка не устранена.

Это говорит о том, что с вероятность 99% имеется дыра (в бекапе в тч), через которую скрипты злоумышленников вносят изменения в код/логику работы и отсюда проблемы.

Ида прочитай уже наконец правила раздела .

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
=Lexx=
На сайте с 14.01.2009
Offline
117
#13
SeVlad:
Это говорит о том, что с вероятность 99% имеется дыра (в бекапе в тч), через которую скрипты злоумышленников вносят изменения в код/логику работы и отсюда проблемы.

Ида прочитай уже наконец правила раздела .

О каких скриптах злоумышленников речь? Выше же написали, что ошибка выходит из-за кривого плагина, когда у поста не находится категория.

А плагин no category parents призван удалять из стандартного url: site.ru/category/custom_category промежуточный псевдораздел category, приводя к виду site.ru/custom_category.

SeVlad
На сайте с 03.11.2008
Offline
1609
#14
=Lexx=:
Выше же написали, что ошибка выходит из-за кривого плагина, когда у поста не находится категория.

Одно другому не противоречит. Это вообще находится в разных плосткостях. Почитай внимательно что я написал и на какие твои слова.

Polkan
На сайте с 28.09.2005
Offline
102
#15

=Lexx=, скорее всего после восстановления из бекапа, рано или поздно создаете запись без указания категории и в этот момент все ломается.

Поскольку стандартные посты при сохранении без категории автоматически получают категорию "Без рубрики", дело скорее всего в custom post types, которые используете. Они у вас не получают автоматом никакую рубрику. Плюс плагин изменения урлов.

Я вам еще 2 дня назад указал причину:

Polkan:
Наверно стоит какой-нибудь плагин для изменения url'ов.
Или в custom post types может быть дело.
WordPress-плагин для Apishops (http://p-api-shop.ru/) P-API-Shop WooCommerce-плагин для Apishops (http://woo-apishops.ru/) Woo-Apishops
=Lexx=
На сайте с 14.01.2009
Offline
117
#16
Polkan:
=Lexx=, скорее всего после восстановления из бекапа, рано или поздно создаете запись без указания категории и в этот момент все ломается.
Поскольку стандартные посты при сохранении без категории автоматически получают категорию "Без рубрики", дело скорее всего в custom post types, которые используете. Они у вас не получают автоматом никакую рубрику. Плюс плагин изменения урлов.
Я вам еще 2 дня назад указал причину:

Я сам не создаю. Подумал, что именно так ошибка и возникает.

Спросил у администратора - тоже говорит, что давно не создавал новых постов, а лишь отвечал на вопросы.

=Lexx=
На сайте с 14.01.2009
Offline
117
#17

Всем спасибо за помощь.

Оказалась уязвимость в утилите timthumb.php

Подробности тут: http://habrahabr.ru/company/pentestit/blog/125534/

SeVlad
На сайте с 03.11.2008
Offline
1609
#18
=Lexx=:
Оказалась уязвимость в утилите timthumb.php
Подробности тут: http://habrahabr.ru/company/pentestit/blog/125534/

Нормально.. Эта уязвимость уже 5+ лет как пофиксена и благополучно забыта, а у тебя она всё живёт.

И что собсно подтверждает мои слова, к которым ты не прислушался.

=Lexx=
На сайте с 14.01.2009
Offline
117
#19

Похоже, рано радовался. Видимо, сайт снова атаковали.

Error.log содержит следующие записи, после чего сайт стал недоступен.

Помогите разобраться что к чему и как предотвратить?


advokat-pravo24.ru [Fri Nov 06 01:38:43 201] [error] [client 162.144.119.155] Directory index forbidden by Options directive: /home/srv29567/advokat-pravo24.ru/wp-includes/pomo/
advokat-pravo24.ru [Fri Nov 06 01:38:56 201] [error] [client 162.144.119.155] Directory index forbidden by Options directive: /home/srv29567/advokat-pravo24.ru/wp-content/uploads/
advokat-pravo24.ru [Fri Nov 06 01:39:18 201] [error] [client 162.144.119.155] \xd0\x91\xd0\xb0\xd0\xb7\xd0\xb0 \xd0\xb4\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd1\x85 WordPress \xd0\xb2\xd0\xbe\xd0\xb7\xd0\xb2\xd1\x80\xd0\xb0\xd1\x82\xd0\xb8\xd0\xbb\xd0\xb0 \xd0\xbe\xd1\x88\xd0\xb8\xd0\xb1\xd0\xba\xd1\x83 Got error 28 from storage engine \xd0\xb2 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xb7\xd0\xb0\xd0\xbf\xd1\x80\xd0\xbe\xd1\x81 SHOW FULL COLUMNS FROM `wp_wfScanners`, \xd0\xb2\xd1\x8b\xd0\xbf\xd0\xbe\xd0\xbb\xd0\xbd\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), do_action('template_redirect'), call_user_func_array, wordfence::templateRedir, wordfence::doEarlyAccessLogging, wfLog->logLeechAndBlock, wfDB->queryWrite
advokat-pravo24.ru [Fri Nov 06 01:39:18 201] [error] [client 162.144.119.155] \xd0\x91\xd0\xb0\xd0\xb7\xd0\xb0 \xd0\xb4\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd1\x85 WordPress \xd0\xb2\xd0\xbe\xd0\xb7\xd0\xb2\xd1\x80\xd0\xb0\xd1\x82\xd0\xb8\xd0\xbb\xd0\xb0 \xd0\xbe\xd1\x88\xd0\xb8\xd0\xb1\xd0\xba\xd1\x83 Incorrect key file for table '/tmp/mysql/#sql_59a_8.MYI'; try to repair it \xd0\xb2 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xb7\xd0\xb0\xd0\xbf\xd1\x80\xd0\xbe\xd1\x81 SHOW FULL COLUMNS FROM `wp_wfHits`, \xd0\xb2\xd1\x8b\xd0\xbf\xd0\xbe\xd0\xbb\xd0\xbd\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), do_action('template_redirect'), call_user_func_array, wordfence::templateRedir, wordfence::doEarlyAccessLogging, wfLog->logHit, wfDB->queryWrite
advokat-pravo24.ru [Fri Nov 06 01:39:18 201] [error] [client 162.144.119.155] \xd0\x91\xd0\xb0\xd0\xb7\xd0\xb0 \xd0\xb4\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd1\x85 WordPress \xd0\xb2\xd0\xbe\xd0\xb7\xd0\xb2\xd1\x80\xd0\xb0\xd1\x82\xd0\xb8\xd0\xbb\xd0\xb0 \xd0\xbe\xd1\x88\xd0\xb8\xd0\xb1\xd0\xba\xd1\x83 Got error 28 from storage engine \xd0\xb2 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xb7\xd0\xb0\xd0\xbf\xd1\x80\xd0\xbe\xd1\x81 SHOW FULL COLUMNS FROM `wp_wfBlocks`, \xd0\xb2\xd1\x8b\xd0\xbf\xd0\xbe\xd0\xbb\xd0\xbd\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 require('wp-blog-header.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), call_user_func_array, wordfence::veryFirstAction, wfLog->firewallBadIPs, wfDB->querySingleRec
advokat-pravo24.ru [Fri Nov 06 01:39:18 201] [error] [client 162.144.119.155] \xd0\x91\xd0\xb0\xd0\xb7\xd0\xb0 \xd0\xb4\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd1\x85 WordPress \xd0\xb2\xd0\xbe\xd0\xb7\xd0\xb2\xd1\x80\xd0\xb0\xd1\x82\xd0\xb8\xd0\xbb\xd0\xb0 \xd0\xbe\xd1\x88\xd0\xb8\xd0\xb1\xd0\xba\xd1\x83 Incorrect key file for table '/tmp/mysql/#sql_59a_1.MYI'; try to repair it \xd0\xb2 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xb7\xd0\xb0\xd0\xbf\xd1\x80\xd0\xbe\xd1\x81 SHOW FULL COLUMNS FROM `wp_wfBlocks`, \xd0\xb2\xd1\x8b\xd0\xbf\xd0\xbe\xd0\xbb\xd0\xbd\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 require('wp-blog-header.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), call_user_func_array, wordfence::veryFirstAction, wfLog->firewallBadIPs, wfDB->querySingleRec
advokat-pravo24.ru [Fri Nov 06 01:39:19 201] [error] [client 162.144.119.155] \xd0\x91\xd0\xb0\xd0\xb7\xd0\xb0 \xd0\xb4\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd1\x85 WordPress \xd0\xb2\xd0\xbe\xd0\xb7\xd0\xb2\xd1\x80\xd0\xb0\xd1\x82\xd0\xb8\xd0\xbb\xd0\xb0 \xd0\xbe\xd1\x88\xd0\xb8\xd0\xb1\xd0\xba\xd1\x83 Incorrect key file for table '/tmp/mysql/#sql_59a_1.MYI'; try to repair it \xd0\xb2 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xb7\xd0\xb0\xd0\xbf\xd1\x80\xd0\xbe\xd1\x81 SHOW FULL COLUMNS FROM `wp_wfBlocks`, \xd0\xb2\xd1\x8b\xd0\xbf\xd0\xbe\xd0\xbb\xd0\xbd\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 require('wp-blog-header.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), call_user_func_array, wordfence::veryFirstAction, wfLog->firewallBadIPs, wfDB->querySingleRec
advokat-pravo24.ru [Fri Nov 06 01:39:19 201] [error] [client 162.144.119.155] \xd0\x91\xd0\xb0\xd0\xb7\xd0\xb0 \xd0\xb4\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd1\x85 WordPress \xd0\xb2\xd0\xbe\xd0\xb7\xd0\xb2\xd1\x80\xd0\xb0\xd1\x82\xd0\xb8\xd0\xbb\xd0\xb0 \xd0\xbe\xd1\x88\xd0\xb8\xd0\xb1\xd0\xba\xd1\x83 Incorrect key file for table '/tmp/mysql/#sql_59a_4.MYI'; try to repair it \xd0\xb2 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xb7\xd0\xb0\xd0\xbf\xd1\x80\xd0\xbe\xd1\x81 SHOW FULL COLUMNS FROM `wp_wfBlocks`, \xd0\xb2\xd1\x8b\xd0\xbf\xd0\xbe\xd0\xbb\xd0\xbd\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 require('wp-blog-header.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), call_user_func_array, wordfence::veryFirstAction, wfLog->firewallBadIPs, wfDB->querySingleRec
advokat-pravo24.ru [Fri Nov 06 01:39:19 201] [error] [client 162.144.119.155] \xd0\x91\xd0\xb0\xd0\xb7\xd0\xb0 \xd0\xb4\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd1\x85 WordPress \xd0\xb2\xd0\xbe\xd0\xb7\xd0\xb2\xd1\x80\xd0\xb0\xd1\x82\xd0\xb8\xd0\xbb\xd0\xb0 \xd0\xbe\xd1\x88\xd0\xb8\xd0\xb1\xd0\xba\xd1\x83 Incorrect key file for table '/tmp/mysql/#sql_59a_8.MYI'; try to repair it \xd0\xb2 \xd0\xbe\xd1\x82\xd0\xb2\xd0\xb5\xd1\x82 \xd0\xbd\xd0\xb0 \xd0\xb7\xd0\xb0\xd0\xbf\xd1\x80\xd0\xbe\xd1\x81 SHOW FULL COLUMNS FROM `wp_options`, \xd0\xb2\xd1\x8b\xd0\xbf\xd0\xbe\xd0\xbb\xd0\xbd\xd0\xb5\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9 require('wp-blog-header.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('wp_loaded'), call_user_func_array, my_flush_rules, update_option, sanitize_option
advokat-pravo24.ru [Fri Nov 06 01:39:20 201] [error] [client 162.144.119.155] PHP Catchable fatal error: Object of class WP_Error could not be converted to string in /home/srv29567/advokat-pravo24.ru/wp-includes/rewrite.php on line 280
SeVlad
На сайте с 03.11.2008
Offline
1609
#20
=Lexx=:
Error.log содержит следующие записи, после чего сайт стал недоступен.
Помогите разобраться что к чему и как предотвратить?

Почитай на русском:

База данных WordPress возвратила ошибку Got error 28 from storage engine в ответ на запрос SHOW FULL COLUMNS FROM `wp_wfScanners`, выполненный require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), do_action('template_redirect'), call_user_func_array, wordfence::templateRedir, wordfence::doEarlyAccessLogging, wfLog->logLeechAndBlock, wfDB->queryWrite
advokat-pravo24.ru [Fri Nov 06 01:39:18 201] [error] [client 162.144.119.155] База данных WordPress возвратила ошибку Incorrect key file for table '/tmp/mysql/#sql_59a_8.MYI'; try to repair it в ответ на запрос SHOW FULL COLUMNS FROM `wp_wfHits`, выполненный require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), do_action('template_redirect'), call_user_func_array, wordfence::templateRedir, wordfence::doEarlyAccessLogging, wfLog->logHit, wfDB->queryWrite
advokat-pravo24.ru [Fri Nov 06 01:39:18 201] [error] [client 162.144.119.155] База данных WordPress возвратила ошибку Got error 28 from storage engine в ответ на запрос SHOW FULL COLUMNS FROM `wp_wfBlocks`, выполненный require('wp-blog-header.php'), require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), call_user_func_array, wordfence::veryFirstAction, wfLog->firewallBadIPs, wfDB->querySingleRec

Кто наплодил таблиц wp_wf*** тот и виноват.

123

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий