0 Пользователей и 1 Гость просматривают эту тему.
  • 28 Ответов
  • 18226 Просмотров
*

Kostushko

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
Не ставятся расширения
« : 17.09.2008, 20:10:24 »
После переезда на новый хостин перестали ставиться расширения, выдается ошибка:

        * JFolder::create: Infinite loop detected
        * Внимание! - Не удалось переместить файл

Версия Joomla 1.5.7 с установленным сео патчем, все папки, из информации о системе в Joomla, доступны на запись

Почитал форум понял что проблема может быть в Open basedir. В самой Joomla в параметрах php указано:
Open basedir: /var/www/vhosts/sait.ru/httpdocs:/tmp именно с двоеточием после httpdocs
а в общих настройках путь к временной папке: /httpdocs/tmp

Подскажите может быть проблема именно с этим двоеточием? Если нет то в чем еще может быть дело?
 
*

Kostushko

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
Re: Не ставятся расширения
« Ответ #1 : 18.09.2008, 08:47:51 »
Проблема у меня решилась отключением open_basedir. Для этого надо в файле httpd.include заменить php_admin_value open_basedir /var/... на php_admin_value open_basedir none. И изменить в общих настройках Joomla /httpdocs/tmp на httpdocs/tmp. Может кому поможет.
*

Vzx

  • Новичок
  • 19
  • 3 / 0
Re: Не ставятся расширения
« Ответ #2 : 18.09.2008, 12:50:55 »
Отключение open_basedir для PHP-- не совсем правильное решение в плане безопасности. Двоеточие разделяет две строки сравнения пути в назначении open_basedir.

Кажется, в общих настройках пути к временной папке задаётся полный путь к директории. Попробуйте вернуть обратно open_basedir и прописать в Джумле вместо "/httpdocs/tmp", скажем, путь "/var/www/vhosts/sait.ru/httpdocs/tmp" (директория должна существовать). Ну и нужно убедиться, что ваш сайт действительно физически располагается в директории  "/var/www/vhosts/sait.ru/httpdocs".
*

Kostushko

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
Re: Не ставятся расширения
« Ответ #3 : 18.09.2008, 12:58:30 »
Я понимаю что отключение open_basedir не безопасно, но в данном случае я пробовал в качестве open_basedir ставить
/var/www/vhosts/sait.ru/httpdocs/tmp
/var/www/vhosts/sait.ru/httpdocs
/var/www/vhosts/sait.ru
/var/www/vhosts
Кстати можно ли заставить апач перечитать конфиги не перезапуская сервер?
В Joomla тоже прописывал путь полностью - /var/www/vhosts/sait.ru/httpdocs/tmp (все директории реально существуют). Но при таких настройках у меня вообще даже на сервер файл не загружается (т.е. файл расширения даже не появляется в папке tmp). Я бы сделал по другому, без отключения open_basedir но никак не получается. Может есть другие варианты?
*

Vzx

  • Новичок
  • 19
  • 3 / 0
Re: Не ставятся расширения
« Ответ #4 : 18.09.2008, 14:56:29 »
Кстати можно ли заставить апач перечитать конфиги не перезапуская сервер?
Нет, кажется, нельзя, но вы можете выполнить apachectl graceful (вместо restart), и тогда апач не будет принудительно разрывать открытые соединения, а дождётся завершения сессий, после чего перезапустится.

В Joomla тоже прописывал путь полностью - /var/www/vhosts/sait.ru/httpdocs/tmp (все директории реально существуют).
У меня везде прописаны именно полные пути, так что, наверное, так и должно быть в общем случае.

Скажите, а какое значение у вас имеет PHP-параметр upload_tmp_dir? Этот путь попадает в open_basedir? Если нет, попробуйте задать как /var/www/vhosts/sait.ru/httpdocs/tmp (для примера).
*

Kostushko

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
Re: Не ставятся расширения
« Ответ #5 : 18.09.2008, 15:45:46 »
В файле php.ini параметр upload_tmp_dir просто закомментирован:
Код
;upload_tmp_dir =

По поводу перезагрузки спасибо, буду знать. В принципе перезагружается сервер всего пол минуты (это потому что он виртуальный), что в общем-то не много.

Сейчас еще раз попробовал поставил такие параметры:

в файле httpd.include (для site.ru)
Код
	<IfModule sapi_apache2.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir "/var/www/vhosts/site.ru/httpdocs"
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
php_admin_flag safe_mode off
php_admin_value open_basedir "/var/www/vhosts/site.ru/httpdocs"
</IfModule>

В настройках Joomla:
/var/www/vhosts/site.ru/httpdocs/tmp
/var/www/vhosts/site.ru/httpdocs/logs

В результате при попытке установить расширение пишет: "Ошибка загрузки файла на сервер"

Насколько я понял Joomla не хочет загружать файлы при любых значениях open_basedir. Кстати проблемы начались с переездом на новый хостинг.
*

Vzx

  • Новичок
  • 19
  • 3 / 0
Re: Не ставятся расширения
« Ответ #6 : 18.09.2008, 16:47:09 »
Попробуйте задать в настройках php.ini для ваших хостов параметр upload_tmp_dir, указывающий на каталог, входящий в open_basedir. Например, вот так:
Код
upload_tmp_dir = /var/www/vhosts/sait.ru/httpdocs/tmp

Или, наверное, можно прямо в конфиге апача по аналогии с тем, как у вас заведены другие параметры PHP (я этот вариант не проверял, т.к. на всех хостах настройки вынесены в отдельные php.ini):
Код
php_admin_value upload_tmp_dir "/var/www/vhosts/sait.ru/httpdocs/tmp"

Цитировать
Joomla не хочет загружать файлы при любых значениях open_basedir.
Мне кажется, дело не в Joomla, а в настройках PHP. Если upload_tmp_dir не входит в open_basedir, то PHP не может обратиться к загружаемому файлу. Вот сейчас у себя из настроек убрал upload_tmp_dir и вижу такую же ошибку, как вы описывали выше.

P.S. Вообще папку tmp, в которую пишет PHP, лучше выносить за видимость document_root, чтобы она была не доступна через веб. Поэтому если описанный выше пример заработает, вынесите tmp за пределы видимости и поменяйте параметры соответствующим образом.
« Последнее редактирование: 18.09.2008, 16:51:35 от Vzx »
*

Kostushko

  • Осваиваюсь на форуме
  • 40
  • 0 / 0
Re: Не ставятся расширения
« Ответ #7 : 18.09.2008, 18:09:12 »
Все заработало!!! Vzx спасибо огромное!

В httpd.includ добавил:
Код
php_admin_value upload_tmp_dir "/var/www/vhosts/sait.ru/httpdocs/tmp"
Убедился что все работает.

А чтоб вынести tmp за document_root поставил такие параметры:
Код
php_admin_value open_basedir "/var/www/vhosts/site.ru" 
php_admin_value upload_tmp_dir "/var/www/vhosts/site.ru/tmp"
в Joomla:
Код
/var/www/vhosts/site.ru/tmp
/var/www/vhosts/site.ru/httpdocs/logs

Папку tmp создал вручную и переназначил пользователя и права.

Еще раз спасибо!

Re: Не ставятся расширения
« Ответ #8 : 20.05.2009, 00:29:47 »
А где искать этот файл httpd.include? У меня такая же проблема!

Re: Не ставятся расширения
« Ответ #9 : 14.08.2009, 02:04:11 »
подскажите пожалуйста,где можно найти файл - httpd.include?
*

G@riK

  • Новичок
  • 21
  • 0 / 0
Re: Не ставятся расширения
« Ответ #10 : 15.08.2009, 14:44:13 »
Советую поинтересоваться у своего хостера имеется ли возможность его редактирования.
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #11 : 03.09.2009, 15:57:23 »
в коде php_admin_value upload_tmp_dir "/var/www/vhosts/sait.ru/httpdocs/tmp"  в место sait.ru пишем свой сайт, и больше ничего менять не нужно ?
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #12 : 03.09.2009, 16:05:05 »
Хостинг провайдер говорит что директории  "/var/www/vhosts/sait.ru/httpdocs/tmp" на хостинге нету, как мне выйти из ситуации, что нужно прописать в файле PHP.ini
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #13 : 03.09.2009, 17:01:44 »
у меня в файле configuration.PHP пишет следующие:
        var $log_path = '/domains/teplokiev.com.ua/public_html/logs/';
   var $tmp_path = '/domains/teplokiev.com.ua/public_html/tmp/';

а что должно писать: "/var/www/vhosts/sait.ru/httpdocs/tmp" ?
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #14 : 03.09.2009, 17:11:54 »
в файле php.ini пишет upload_tmp_dir =/home/teplokie/domains/teplokiev.com.ua/public_html/tmp/
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #15 : 03.09.2009, 17:38:50 »
у меня на рабочем сайте пишет так:
;upload_tmp_dir

на неробочем прописали так же, но ничего не изменилось, подскажите а если поменял логин admin, который создается по умолчанию на свой, может быть такая проблема, как ее можно решить, если проблема именно со сменом логина ?
*

Vzx

  • Новичок
  • 19
  • 3 / 0
Re: Не ставятся расширения
« Ответ #16 : 09.09.2009, 18:56:31 »
HOG_Seruj, если директории такой нет, то её можно создать самостоятельно внутри вашего пользовательского каталога.
Запись вида
;upload_tmp_dir
означает, что параметр "upload_tmp_dir" НЕ настроен и будет использоваться значение по умолчанию. Попробуйте убрать точку с запятой в начале строки и прописать полный путь на директорию tmp.
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #17 : 10.09.2009, 08:53:20 »
путь с хостером прописывали, никакого положительного результата это не дало
*

Vzx

  • Новичок
  • 19
  • 3 / 0
Re: Не ставятся расширения
« Ответ #18 : 10.09.2009, 13:24:41 »
путь с хостером прописывали, никакого положительного результата это не дало
А в настройках Joomla этот путь указали? Там также должен быть указан полный "длинный" путь.
Попробуйте ради интереса вообще отключить open_basedir, как это указано во втором посте темы. Заработает ли в этом случае?
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #19 : 10.09.2009, 15:24:25 »
у меня путь совсем не такой, а где конкретно что изменить надо чтобы выключить  open_basedir ? !
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #20 : 10.09.2009, 15:32:45 »
путь к временной папке: /domains/teplokiev.com.ua/public_html/tmp/ - как изменить?
*

Vzx

  • Новичок
  • 19
  • 3 / 0
Re: Не ставятся расширения
« Ответ #21 : 10.09.2009, 20:57:10 »
путь к временной папке: /domains/teplokiev.com.ua/public_html/tmp/ - как изменить?
У вас должно быть прописано в конфигурации PHP (файл "php.ini" или "httpd.include" или спросить у хостера) что-то вроде:
upload_tmp_dir "/domains/teplokiev.com.ua/public_html/tmp" <-- ваша директория для загрузок;
open_basedir "/domains/teplokiev.com.ua" <-- путь к директории вашего веб-сервера, php сможет работать с файлами только внутри этой директории.
Потом в самой Joomla указывается путь для загрузок как "/domains/teplokiev.com.ua/public_html/tmp" (без кавычек).
Но ещё раз скажу, что это небезопасно. В идеале директория "tmp" должна находиться выше директории "public_html".
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #22 : 11.09.2009, 12:35:44 »
так у меня все так и прописано upload_tmp_dir "/domains/teplokiev.com.ua/public_html/tmp
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #23 : 11.09.2009, 12:37:17 »
но не в таком варианте в в варианте когда строчка upload_tmp_dir закоментирована, ничего не работает, я подозреваю что ето случилось после смена логина и пароля главной учетной записи, но как ето можно исправить?
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #24 : 17.09.2009, 14:53:36 »
Ура, заработало :)  :D

Народ у меня проблема решилась таким образом: в папке configuration.php прописываем:
   log /home/папка сайта/domains/сайт/public_html/logs  
путь tmp прописываем просто /tmp/  
 Проверте еще "Помощь" - "Информация о системе" у вас в списке будет написано какие папки не доступны на запись, у меня было 2 папки:
Log Directory ($log_path)
Temp Directory ($tmp_path)  
У меня ети файлы  в конце списка :)  

Re: Не ставятся расширения
« Ответ #25 : 19.09.2009, 14:08:15 »
с расширениями разобрался, зато теперь образовалась такая проблема: при установке шаблона выскакивает  502 Bad Gateway. Эта же ошибка при желании отредактировать модуль или загрузить менеджер шаблонов.  Помогите решить.
« Последнее редактирование: 19.09.2009, 17:22:39 от iktus »

Re: Не ставятся расширения
« Ответ #26 : 23.09.2009, 18:58:01 »
Хочу поблагодарить HOG_Seruj и всех других отписавшихся здесь, за то что приняли участие в решении проблемы.
У меня была такая же проблема, которую удалось решить прописав нужные строки в файле configuration.php, как указывал HOG_Seruj
Теперь "Помощь" - "Информация о системе" - "Права на папки" действительно показывает что на tmp есть доступ на запись и установить компоненты теперь проще простого, но вот почему-то на log папку доступа так и не появилось на запись.
Если у кого получиться, пишите - mr.selcet@gmail.com
*

HOG_Seruj

  • Захожу иногда
  • 110
  • 1 / 0
Re: Не ставятся расширения
« Ответ #27 : 25.09.2009, 15:06:13 »
selcet, уточни путь к файлу у хостера, может путь не правильно прописал
*

basha

  • Новичок
  • 9
  • 1 / 0
Re: Не ставятся расширения
« Ответ #28 : 21.08.2010, 23:50:14 »
Проблема у меня решилась отключением open_basedir. Для этого надо в файле httpd.include заменить php_admin_value open_basedir /var/... на php_admin_value open_basedir none. И изменить в общих настройках Joomla /httpdocs/tmp на httpdocs/tmp. Может кому поможет.
Огроменное спасибо я недавно перехал, затем пришлось поставить новый модуль, мучился дня три пока не попал на эту страничку
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

нет вкладки "расширения"

Автор shushanechka

Ответов: 6
Просмотров: 4193
Последний ответ 12.03.2017, 23:56:51
от snemp
Перестали устанавливаться расширения

Автор Elena75

Ответов: 11
Просмотров: 4539
Последний ответ 07.05.2013, 23:04:38
от Alexhelp
Продолжение темы установка расширения

Автор exXtaZzy

Ответов: 0
Просмотров: 793
Последний ответ 21.12.2012, 20:54:26
от exXtaZzy
версия 2.5 - не загружаются расширения

Автор olvet

Ответов: 1
Просмотров: 1327
Последний ответ 21.04.2012, 08:20:23
от Taatshi
не устанавливаются расширения

Автор enerbe

Ответов: 0
Просмотров: 1276
Последний ответ 13.02.2012, 22:31:44
от enerbe