Способы устранения ошибок в Joomla |
Итак, начнем. Если у Вас версия Joomla! ниже 1.5.15, то вам необходимо обновить ядро:
1. Смотрим, какая версия Joomla! у нас установлена - в правом верхнем углу административной части сайта будут заветные циферки - например "Версия 1.5.12". 2. Далее идем на joomlacode.org, в списке архивов ищем файл Joomla_1.5.12_to_1.5.15-Stable-Patch_Package.zip 3. Скачиваем и содержимое архива распаковываем в корень сайта на хостинге, подтверждая замену всех файлов. Теперь приступим непосредственно к описанию различных ошибок и способов их решения. Fatal error: Maximum execution time of 30 seconds exceeded in ... Критическая ошибка при загрузке любой страницы Комментарий: недостаточно времени для выполнения скрипта Решение: возможны несколько способов решения данной ошибки.
Fatal error: Call to a member function merge() on a non-object in /home/.../public_html/ Критическая ошибка при создании и/или редактировании пунктов меню. Решение: проверить целостность файла administrator/components/com_menus/models/item.php, при необходимости перезалить из установочного архива. Для гарантии - перезалить всю папку administrator из установочного архива Joomla! Delete failed: '0a54a1212e802cc1ada1597885f9a59e.php' Некритическая ошибка при сохранении материалов. Комментарий: невозможно удалить файл кэша статьи. Решение: проверить права записи (CHMOD) в папку /tmp (должны стоять 755 или 777). Проверить абсолютный путь к папке /tmp в конфиге сайта (configuration.php) Database Error: Unable to connect to the database:Could not connect to database Критическая ошибка соединения с базой данных. Комментарий: нет подключения к базе данных. Решение: проверить наличие базы данных сайта (в configuration.php в параметре var $db, имя базы данных должно соответствовать имени базы в phpMyAdmin). Проверить имя пользователя базы данных (var $user) и пароль доступа к базе данных (var $password). Если с этими параметрами все нормально - скорее всего упал MySQL, для устранения ошибки обратится к хостеру. jtablesession::Store Failed Критическая ошибка доступа к таблице сессий базы данных. Комментарий: отсутствует таблица _session в базе данных. Решение: проверить наличие таблицы _session в базе данных сайта. Проверить правильность префикса используемой базы данных (параметр var $dbprefix в configuration.php должен совпадать с префиксом таблиц базы данных, причем следует помнить, что таблицы в базе данных могут быть с разными префиксами, по умолчанию Joomla! использует префикс "jos_"). JAuthentication::__construct: Could not load authentication libraries. Критическая ошибка авторизации в административной части сайта. Комментарий: причиной ошибки является отключение (снятие с публикации) плагина Authentication - Joomla и/или плагина User - Joomla! Решение: необходимо в phpMyAdmin включить два плагина (либо через интерфейс phpMyAdmin, либо выполнить два следующих SQL-запроса): Активирование плагина Authentication - Joomla: UPDATE `jos_plugins` SET `name` = 'Authentication - Joomla', `element` = 'joomla', `folder` = Активирование плагина User - Joomla: UPDATE `jos_plugins` SET `name` = '', `element` = 'joomla', `folder` = 'user', `access` = '0', JAuthentication::__construct: Невозможно загрузить библиотеки аутентификации. Критическая ошибка авторизации в фронтальной части сайта. Комментарий: причиной ошибки является отключение (снятие с публикации) плагина Authentication - Joomla и/или плагина User - Joomla! Решение: необходимо в phpMyAdmin включить два плагина (либо через интерфейс phpMyAdmin, либо выполнить два следующих SQL-запроса): UPDATE `jos_plugins` SET `name` = 'Authentication - Joomla', `element` = 'joomla', `folder` = Активирование плагина User - Joomla! UPDATE `jos_plugins` SET `name` = '', `element` = 'joomla', `folder` = 'user', `access` = '0', Warning: main(/путь/includes/phpInputFilter/class.inputfilter.php):failed to open stream: Критическая ошибка во время установки либо после установки Joomla! Комментарий: папка /includes/phpInputFilter залилась не полностью либо в неправильном регистре. Решение: проверить и/или заменить папку /includes/phpInputFilter из оригинального дистрибутива и проверить регистр имени папки - при необходимости переименовать (вместо phpinputfilter в phpInputFilter) cURL extension is not available on your server Некритическая ошибка появляется при публикации некоторых модулей на форнте сайта (в местах вывода модулей). Комментарий: отсутствует расширение php_curl на хостинге. Решение: Необходимо подключить расширение PHP cURL - либо в php.ini добавить extension=php_curl.dll, либо, если нет доступа к php.ini, обратится к хостеру. Warning: session_start() [function.session-start]: Cannot send session cache limiter - Критическая ошибка при загрузке сайта. Решение: проверить кодировку файла конфигурации (configuration.php). Кодировка файла должна быть в utf-8 без BOM. Содержимое файла configuration.php должно начинаться с ERROR LOADING FEED DATA Ошибка при загрузке канала данных. Некритическая ошибка, появляется в админке и в лицевой части сайта соответственно. Комментарий: по какой-то причине не возможно загрузить ленту новостей. Решение: Необходимо снять с публикации административный модуль mod_feed (либо удалить его). Fatal error: Allowed memory size of XXX bytes exhausted (tried to allocate YYY bytes)... Критическая ошибка появляется при выполнении определенных операций. Комментарий: Для выполнения скриптов недостаточно отведенной хостером оперативной памяти. Решение: Существует несколько способов решить эту ошибку: 1. Пробуем самостоятельно увеличить память для выполнения скрипта 1.1. В файл index.php (в корне сайта) добавляем строку (при необходимости значение 32М можно увеличить, но сильно увеличивать не стоит): 1.2. В файл .htaccess (в корне сайта) добавлем строку: 1.3. В php.ini (если есть к нему доступ) увеличиваем параметр memory_limit: 1.4. В своем скрипте добавляем: 1.5. Для Joomla! 1.5 существует плагин Memory Limit Plugin, который добавляет память для выполнения скриптов без ручного вмешательства в файлы сайта. 2. Если все вышеперечисленные способы не помогли - обращаемся к хостеру с просьбой об увеличении оперативной памяти для выполнения скриптов. JFolder::create: Path not in open_basedir paths Критическая ошибка при установке расширений. Комментарий: ошибка связанная с open_basedir. Решение: Для начала проверяем правильность пути к папке tmp (в файле сonfiguration.php). Если там все верно, то открываем файл /libraries/joomla/filesystem/folder.php и находим $obd = ini_get('open_basedir') (примерно 194 стр.) и комментируем её, т.е. ставим впереди этой строки // DB function failed with error number 1030 Критическая ошибка при сохранении и/или редактировании материалов или модулей. Комментарий: повреждены таблицы базы данных. Решение: необходимо проверить таблицы базы данных и восстановить их (в phpMyAdmin есть соответствующие функции). Если не помогло - обратится к хостеру с сообщением об ошибке MySQL - 1030 SQLSTATE: HY000 (ER_GET_ERRNO) Источник: http://www.eldia.org.ua и http://joomla.zvirec.com |