Warning: include(/cryptographp.fct.php): failed to open stream: No such file or directory in /backup/web_server/sites/softodon.com/www/article.php on line 5 Warning: include(): Failed opening '/cryptographp.fct.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /backup/web_server/sites/softodon.com/www/article.php on line 5 Joomla - Ошибка Infinite loop detected in JError
Меню в данный момент недоступно
Категории статей
Joomla - Ошибка Infinite loop detected in JError

Joomla error Infinite loop detected in JErrorОшибка Infinite loop detected in JError - довольно часто встречающаяся проблема при использовании движка (система управления контентом) Joomla
Каждый старается разобраться с ошибкой методом тыка. Причем все довольно сумбурно и непонятно, почему в одном случае срабатывает, а в другом нет. Попробуем разобраться.
Сначала, что это означает. «Бесконечный цикл обнаруженный в JError». Возникает вопрос: а причем бесконечный цикл.  Он возникает при попытке подключения к базе данных.

Причина:
Когда JSite (наследник от JApplication) инициализируется,  он пробует запустить  новый сеанс. А это требует записи в таблицу сессии #__session. При подключения к базе данных при некорректном или отсутствии параметра вызывается JError:: raiseError. Настройки по умолчанию  JError указывают, что заданная по умолчанию обработка ошибок уровня это - E_ERROR, который вызывает callback (откат), который в конечном счете опять вызывает запрос JError:: customErrorPage(). Он старается получить копию глобального объекта с JFactory:: getApplication (), который приводит опять к тому же самому исключению, которое будет вызываться снова и снова, вызывая бесконечную проблему цикла. Довольно туманно, но что сделаешь, такая вот ситуация.

А теперь по-простому (можете верхний абзац не читать). Из обзора форумов при решении этого вопроса.

1.   В большинстве форумов предлагают такой вариант (удивился, но это тащится с одного ф. на другой ф. как единственное решение, Люди не присваивайте чужие решения, тем более ошибочные. Хочется показаться умным? Понимаю!)
a. Зайти на ftp в папку libraries->joomla->filesystem
b. Скачать файл folder.php на ваш компьютер (не забудьте сделать резервную копию этого файлы)
с. Открыть файл folder.php редактором и найти строку  $obd = ini_get("open_basedir")
в. Закоментировать ее // $obd = ini_get("open_basedir")
у. Сохранить изменения и закачать файл назад на сервер.

Комментарий: Помогает, все радуются, ставят плюсы, но это чисто отношения к нашему вопросу не имеет. Обязательно находится «один уродливый» и испуганно пишет «мне не помогло». Но его никто не слышит и не хочет слушать. И он один остается в глубоком раздумье «неуж я один такой тупой». 
Если ему не помогло, значит основная причина не в этом.
Лучше не закомментить, а написать $obd = NULL  с точки зрения прогера.
 Этот вариант тесно связан JFolder::create: Path not in open_basedir paths
 Warning! - Failed to move file
Это связано с тем, что разработчики намеренно заблокировали возможность создания каталогов на серверах, где значение параметра "open_basedir" не совпадает с корнем сайта. Зачем – у них спросите.

В таком случае вообще ничего не исправлять в folder.php. В настройках Apache для хоста или в php.ini установить -open_basedir "полный_путь_к_document_root:." - где установлена Joomla и точка.
Так что файл folder.php - невиновен.
2.   Второй вариант. Предложение изменить тип configuration.php public $dbtype = "mysqli";    на public $dbtype = "mysql";
Опять публичный рев, ура, +500, и т.д. И опять находится возмутитель: «А у меня не работает, не помогло». А кому нужен он одиночка, который тупой. Ноль внимания. Крик в пустыне. Но проблема-то осталась, хотя бы для него одного.
3.   Следующий вариант. 
Настроить пути tmp, log.
   public $log_path = "/home/u119234/adsmirnyru/www/logs";
   public $tmp_path = "/home/u119234/adsmirnyru/www/tmp";
Многим помогает, буря оваций и т.д И опять находится некто, несогласный с ними, но его уже никто не слышит. Проблема опять осталась нерешенной для него.
4.   И так куча вариантов, найденных методом тыка. И каждый прав в своей «находке». Такой мы народ, просто так нас не переубедишь.
5.   А вся беда заключается в configuration.php и только в нем. Строк много, остановимся только на некоторых:

   public $dbtype = "mysqli"; какой на локалке такой и должен быть на хостинге
   public $host = "70.108.70.10"; поставьте свой
   public $user = "u119234"; а это имя юзера
   public $password = "v34cmAaK"; пароль юзера
   public $db = "b119234"; имя базы данных
   public $dbprefix = "jos_"; внимание, это префикс таблицы, хостер всегда меняет, если он ставят joomla
   public $log_path = путь к logs;
   public $tmp_path =путь к tmp; пишется полный путь в "" одинарных

Совет: через свой хостинг «доберитесь» до своей базы данных MySQL, т.е. запустите phpMyAdmin.
Он требует пользователя, пароля, имени базы данных. Если вы раскрыли базу данных  - отлично. Вот эти данные проставьте в строки  configuration.php. И еще проверьте, какой префикс. С путями надеюсь, понятно.

Обычно этого бывает достаточно, чтобы проблема исчезла. Если проверка «спотыкается» на одном из строк configuration.php при подключении к базе данных – идет прерывание и в «штопор», т.е в «бесконечный цикл» (читай, где «туманно»).

Обычно правильное наведение порядка в configuration.php помогает полностью избавиться от этой проблемы.

КатегорияWeb разработка
РазделCMS
Просмотров1354
Дата добавления2012-05-26 23:20:51
Очков19
Проголосовавших7
Средний балл2
Автор0



Рейтинг: 2 из 5 (голосов: 7)

Notice: Undefined index: version in /backup/web_server/sites/softodon.com/www/article.php on line 96
Отзывы о статье - Joomla - Ошибка Infinite loop detected in JError
Notice: Use of undefined constant a_name - assumed 'a_name' in /backup/web_server/sites/softodon.com/www/article.php on line 99 Notice: Use of undefined constant date - assumed 'date' in /backup/web_server/sites/softodon.com/www/article.php on line 99 Notice: Use of undefined constant text - assumed 'text' in /backup/web_server/sites/softodon.com/www/article.php on line 99
Delmy
2012-07-21
This is eaxctly what I was looking for. Thanks for writing!
Notice: Use of undefined constant a_name - assumed 'a_name' in /backup/web_server/sites/softodon.com/www/article.php on line 99 Notice: Use of undefined constant date - assumed 'date' in /backup/web_server/sites/softodon.com/www/article.php on line 99 Notice: Use of undefined constant text - assumed 'text' in /backup/web_server/sites/softodon.com/www/article.php on line 99
Анастасия
2013-06-03
У меня все оказало проще, тупо перезалила конфиг, и заново все прописала!
Написать отзыв к статье


Fatal error: Call to undefined function dsp_crypt() in /backup/web_server/sites/softodon.com/www/article.php on line 110