Борьба с JoomlaFCK

Вчера потратил довольно много времени, борясь с "глюками" JoomlaFCK.
Причём, это пришлось делать в 2-х проектах.

В 1-м проекте, был установлен JoomlaFCK 2.6 и не хотел закачивать картинки. Программист потратил около дня борясь с данной проблемой. А проблема оказалась в малом - нужно было переставить на стабильную версию JoomlaFCK 2.5.15.
После установки стабильной версии, очистки кеша и куки всё заработало.

Во 2-м проекте, на другом хостинге, почему-то JoomlaFCK ругался ан не верный формат файлов. Хотя, файлы были стандартные - png, gif. Более того, на этом же сервере, только в другом домене он прекрасно закачивал файлы и не "ругался" на формат данных.
Попробывал поставить версию 2.5.15 - не помогло.
Покапавшись в исходниках, увидел, что необходимо инициализировать мамбот, чтоб прописались пути и т.п.
Т.е. когда выполняете SQL-запрос
SELECT params FROM jos_mambots WHERE name = 'JoomlaFCK'
должны вывестись параметры. Решилось это просто - заходом в административной части в параметры модуля и нажатием сохранить.
Стал выводиться каталог файлов, где лежат фотографии, но закачиваться всё равно не захотело - сообщает, что Invalid file.

Кроме того, когда открываем окно с каталогом файлов, JoomlaFCK по умолчанию запрещает вывод перечня файлов. О чём выводит сообщение.
Для того, чтоб нормально подключалось, необходимо исправить в config.php, чтоб переменная Enabled всегда принимала значение true.
$Config['Enabled'] = true;

Прописывание строк типов файлов - ничего не дало:
AddType image/gif .gif
AddType image/png .png
AddType image/jpg .jpg

Что интересно, что Медиаменеджер тоже не захотел закачивать файлы. Таким образом, это проблемы Joomla или проблемы хостинга в целом.


Покопался в интернете. Вот, что я нашёл:

У меня возникает ошибка: «Загрузка XXX — загрузка неудачна» + «ОШИБКА: В установочном пакете невозможно найти XML-файл установки» + я не могу установить никакой компонент Вариантов может быть несколько: При установке (на странице выбора архива) Joomla пишет на какие директории нет возможности записи, исправьте права, если их не хватает. Убедитесь, что вы ставите именно то что надо. То есть не просто скачанный откуда-то zip-архив, а надо точно убедиться, что в этом архиве нет других архивов, которые уже и надо ставить. Очень часто компоненты идут вместе с модулями и мамботами, и все одним файлом. Так вот — один файл не надо пытаться ставить, разархивируйте и потом уже отдельно все ставьте. Убедитесь что на /media есть соотстветствующие права доступа (например 777) Невозможно установить плагин, например, для Community Builder или SOBI через установщик расширений для Joomla, такие вещи надо устанавливать через установщик данного конкретного компонента Нельзя ставить расширения из RAR-архивов, только ZIP или схожие GZ-форматы. Возможна такая бяка — safe mode не даст вам ставить компоненты. Тут уж ничего не поделаешь (Не поленитесь и спросите у хостера, если вы не знаете что это такое). Если у вас на хостинге установлен safe mode и его никак не выключить, то возможно вам поможет safe mode patch. После его установки надо поставить на все нужные директории права 777, настроить доступ по FTP и попытаться снова установить расширение. Убедитесь, что в имени загружаемого архива нет спецсимволов, идеально, если там будут только английские буквы Специально для русского апача — надо вставить в .htaccess строку «CharsetRecodeMultipartForms off» (если вывалися белый лист - и вы не в курсе почему - значит вы нифига не читали фак). Можно так же попробовать добавить в файл .htaccess следующие строки: CharsetDisable On CharsetRecodeMultipartForms off AddType application/zip .zip AddType compressed/zip; application/x-zip-compressed .zipВозможно в xml-файле не правильно указана кодировка. Если компонент локализован, удостоверьтесь что указанная в заголовке encoding="XXX" соответствует действительности. Для локализованных компонент это чаще всего «windows-1251» По совету Фей можно сделать следующую модификацию для версий PHP больше 5. Открыть файл /administrator/includes/admin.php и добавить туда одну строчку:

function mosMakePath($base, $path='', $mode = NULL)


{ ... for ($i = 0; $i < $n; $i++)


{ $path .= $parts[$i] . '/';


$path = str_replace( '//', '/', $path ); // эту строку и надо добавить


if (!file_exists( $path )) {


if (!mkdir(substr($path,0,-1),$mode)) { ...

Попробуйте установить расширение из директории, а не из архива. Надо скопировать по ftp файлы в папку на хосте и оттуда уже устанавливать. Папка установки указывается на странице для инсталляции компонентов/модулей/мамботов. Если ничего не получилось — остается последний вариант — долгий и трудный. Делаем дамп, сливаем к себе по фтп ваш сайт, разворачиваем его дома на локальном сервере (например денвере), на него ставим компонент или что вам нужно, снова делаем дамп и заливаем обратно на сервер. Если ничего не работает - мы не знаем причины. Это хостинг, реальный хостинг с его заморочками. Все предусмотреть не возможно. Не надо создавать всякие темы, мол "неужели никто не знает". Вариант решения проблемы (пусть долгий и трудный) дан - его и используйте.

Думаю, это и есть решение вопроса.

Комментарии

Популярные сообщения