24 мар. 2015 г., 8:58

Помогите выяснить в чем проблема

Сайт открывается очень долго примерно 5-6 секунд. Причем главную страницу секунды 4-5. потом уже за секунду подгружается все остальное. У кого может быть ошибка у меня или у хостера? хостинг в мастерхосте. Посмотрел лог ошибок, а он с декабря месяца весит уже 75мб.
[2015-03-24 11:42:29] (ERROR @ /index.php) Problem getting service pdoTools, instance of class pdoTools, from path [2015-03-24 11:42:30] (ERROR @ /index.php) Could not load class: pdoTools from pdotools. [2015-03-24 11:42:30] (ERROR @ /index.php) Problem getting service pdoTools, instance of class pdoTools, from path [2015-03-24 11:42:30] (ERROR @ /index.php) Could not load class: pdoTools from pdotools. [2015-03-24 11:42:30] (ERROR @ /index.php) Problem getting service pdoTools, instance of class pdoTools, from path [2015-03-24 11:45:02] (ERROR @ /index.php) Could not load class: pdoTools from pdotools. [2015-03-24 11:45:02] (ERROR @ /index.php) Problem getting service pdoTools, instance of class pdoTools, from path [2015-03-24 11:45:02] (ERROR @ /index.php) Could not load class: pdoTools from pdotools. [2015-03-24 11:45:02] (ERROR @ /index.php) Problem getting service pdoTools, instance of class pdoTools, from path
На чьей стороне может быть косяк? Что не так с pdotools? вроде как его у меня вообще нет
Хорошо бы гуглить хоть немного. Месяц назад обсуждали.
сделал, но ошибки не прошли. версия 2.3.1
Попробуйте переустановить pdoTools. Может в extensionPackages не прописалось.
Та же беда, проблемы начались после того, как поставил Ajaxform. Попробовал деинсталировать, все встало на свои места. ошибки пробали. Если кто-то решит проблему отпишитесь в ветке.
Отвечаю сам себе))) Может кому-то будет нужно. Вся беда изза того, что сниппет AjaxForm проверяет наличике какого-то pdoTools Решил я этот pdoTools поставить, после чего сайт вообще отказался работать. Вобщем это чудное приложение (pdoTools) я решил удалить, чтобы не усложнять себе жизнь.
Дальше залез в сниппет AjaxForm нашел там проверку этого пдоТулса и закомментировал Было /** @var pdoTools $pdo */ if ($pdo = $modx->getService('pdoTools')) { $content = $pdo->getChunk($tpl, $scriptProperties); } /** @var modChunk $chunk */ elseif (!$content = $modx->getChunk($tpl, $scriptProperties)) { return $modx->lexicon('af_err_chunk_nf', array('name' => $tpl)); }
Стало /** @var pdoTools $pdo */ //if ($pdo = $modx->getService('pdoTools')) { // $content = $pdo->getChunk($tpl, $scriptProperties); //} /** @var modChunk $chunk */ if (!$content = $modx->getChunk($tpl, $scriptProperties)) { return $modx->lexicon('af_err_chunk_nf', array('name' => $tpl)); }
Я не программист, но думаю этот код еще как-то укоротить можно, но после этого ошибки пропали
Погуглите про pdoTools. Про него много информации в сети есть. Но мы его не используем. И AjaxForm тоже. Мы использует form-процессор. Если у вас используется сборка ShopModxBox, то вот пример Ajax-запроса на него:
$('.my_form [type=submit]').on('click', function(e){ var form = $(this).parents('form:first'); var data = form.serialize(); var action = 'login'; ShopMODX.Request.run(action, data). then(function(resp){ if(resp.success){ alertify.success(resp.message || "Вы успешно авторизованы!"); } }); return false; });
Да мне нужно было чтобы форма отправки письма работала через Ajax и всё. Там снипет в 25 строчек, который работает с fjrmit в паре, зачем мне усложнять жизнь с каким-то pdoTools))) Стер три строчки, как показал выше, ошибки пропали, отписал тут, чтобы люди быстрее проблемы решали и дальше работать)))
зачем мне усложнять жизнь с каким-то pdoTools)))
Вам может и не за чем, а вот это чей-то маркетинговый ход :) Этот pdoTools суется в кучу различных пакетов и где он нужен, и где не нужен. Цель — много-много скачиваний :)
К сожалению, MODX не умеет из коробки работать с @INLINE чанками, и если пользователи просят такой функционал — я подключаю pdoTools. А с новой версии к поддержке @INLINE добавляется заодно и поддержка Fenom — у всех, кто использует этот ненужный компонент.
Другой вопрос, нафига вообще MODX спамит в логи о незагруженном сервисе, да еще и в LOG_LEVEL_ERROR? Придётся добавить дополнительную проверку.
Цель — много-много скачиваний
Каждый вечер медитирую на количество скачиваний, без этого вообще не заснуть.
Каждый вечер медитирую на количество скачиваний, без этого вообще не заснуть.
Василий, я так часто слышал от тебя упоминания о скачиваниях, что примерно такое ощущение и складывается. Если нужны пруффы, могу загуглить. А так, это мое скромное ИМХО. Да и с точки зрения маркетинга вполне правильный ход, так что не расстраивайся, это не зазорно.
так что не расстраивайся, это не зазорно
Чего мне расстраиваться?
Сразу выложил новую версию AjaxForm в два репозитория и теперь количество закачек еще возрастёт! Всё ради них, родных.
Ну и здорово, что дело движется :)

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