После обновления 2.5.0 перестал работать установка дополнения через FTP данные

После обновления 2.5.0 перестал работать установка дополнения через FTP данные

#16 13 апреля 2016 в 14:58
Fuze,

По присланным вами реквизитам я проверил — 777 у вас не везде стоят, кроме того, 777 и НЕ должны везде стоять.

Khushruz
Так я это временно для проверки выставлял. Потом-то как положенно вернул.

Спасибо что быстро нашли ошибку, сделал все исправления и заработало.
#17 13 апреля 2016 в 15:04
А установочный(для автообновлений) файл исправили?
Все остальные сайты обновлять и каждый исправлять? Или подождать…
#18 13 апреля 2016 в 17:10


А установочный(для автообновлений) файл исправили?
Все остальные сайты обновлять и каждый исправлять? Или подождать...

Александр Сергеевич
Скажите пожалуйста вот это код исправления да: $result = @ftp_mkdir($conn_id, $dst_dir."/".$file);
if (!$result) {throw new Exception(LANG_CP_FTP_MKDIR_FAILED);}
if($is_function_exists_ftp_chmod){
— @ftp_chmod($conn_id, 0644, $dst_dir."/".$file);
+ @ftp_chmod($conn_id, 0755, $dst_dir."/".$file);
}
}

@@ -159,7 +159,7 @@ private function uploadDirectoryToFTP($conn_id, $src_dir, $dst_dir) {
$result = @ftp_put($conn_id, $dst_dir."/".$file, $src_dir."/".$file, FTP_BINARY);
if (!$result) { throw new Exception(LANG_CP_FTP_UPLOAD_FAILED); }
if($is_function_exists_ftp_chmod){
— @ftp_chmod($conn_id, 0755, $dst_dir."/".$file);
+ @ftp_chmod($conn_id, 0644, $dst_dir."/".$file);
}

}
View 4 system/controllers/messages/actions/write.php
@@ -2,7 +2,9 @@

class actionMessagesWrite extends cmsAction {

— public function run($contact_id){
+ public function run($contact_id=null){
+
+ if(empty($contact_id)){ cmsCore::error404(); }

$user = cmsUser::getInstance();

View 2 templates/default/controllers/auth/registration.tpl.php
@@ -30,7 +30,7 @@ function toggleGroups(){

var group_id = $('select#group_id').val();

— $('.groups-limit').hide();
+ $('.groups-limit').hide().find('input, select, textarea').prop('required', false);

$('.group-' + group_id).show();
#19 13 апреля 2016 в 17:15
Александр Сергеевич, а какой у вас режим apache — prefork или itk?
#20 13 апреля 2016 в 17:46

А установочный(для автообновлений) файл исправили?
Все остальные сайты обновлять и каждый исправлять? Или подождать...

Александр Сергеевич
присоединяюсь к вопросу.
#21 13 апреля 2016 в 18:48

Скажите пожалуйста вот это код исправления да :

Khushruz

Насчет FTP в /system/controllers/admin/actions/install_ftp.php:
Вот это строка 151 файла:
  1. @ftp_chmod($conn_id, 0644, $dst_dir."/".$file);
Меняем на это:
  1. @ftp_chmod($conn_id, 0755, $dst_dir."/".$file);
и это строка 162:
  1. @ftp_chmod($conn_id, 0755, $dst_dir."/".$file);
на это:
  1. @ftp_chmod($conn_id, 0644, $dst_dir."/".$file);
Всё
#22 13 апреля 2016 в 19:48

присоединяюсь к вопросу.

Zau4man
Да, основной дистрибутив и пакет обновления исправлен.
#23 13 апреля 2016 в 21:45


присоединяюсь к вопросу.

Zau4man
Да, основной дистрибутив и пакет обновления исправлен.

Fuze
И какие теперь действия предпринять, если обновился старым пакетом? Обновлять в ручном режиме?
#24 13 апреля 2016 в 21:51

И какие теперь действия предпринять, если обновился старым пакетом?

Volgomarket
Я выше же написал

Решение

1. Переустановить права доступа заново на все папки. Какие права должны быть и как их можно быстро установить написано тут

2. Применить вот это исправление. Правки файла /system/controllers/admin/actions/install_ftp.php

Fuze
#25 14 апреля 2016 в 06:32
После исправления снова вот это ошибка как понять где ощибка "Ошибка создания директории. Проверьте правильность пути и наличие прав"
Я применил вот эта код: $result = @ftp_put($conn_id, $dst_dir."/".$file, $src_dir."/".$file, FTP_BINARY);
if (!$result) { throw new Exception(LANG_CP_FTP_UPLOAD_FAILED); }
if($is_function_exists_ftp_chmod){
— @ftp_chmod($conn_id, 0755, $dst_dir."/".$file);
+ @ftp_chmod($conn_id, 0644, $dst_dir."/".$file);
#26 14 апреля 2016 в 06:33


И какие теперь действия предпринять, если обновился старым пакетом?

Volgomarket
Я выше же написал

Решение

1. Переустановить права доступа заново на все папки. Какие права должны быть и как их можно быстро установить написано тут

2. Применить вот это исправление. Правки файла /system/controllers/admin/actions/install_ftp.php

Fuze

Fuze



После исправления снова вот это ошибка как понять где ощибка "Ошибка создания директории. Проверьте правильность пути и наличие прав"
Я применил вот эта код: $result = @ftp_put($conn_id, $dst_dir."/".$file, $src_dir."/".$file, FTP_BINARY);
if (!$result) { throw new Exception(LANG_CP_FTP_UPLOAD_FAILED); }
if($is_function_exists_ftp_chmod){
— @ftp_chmod($conn_id, 0755, $dst_dir."/".$file);
+ @ftp_chmod($conn_id, 0644, $dst_dir."/".$file);
#27 14 апреля 2016 в 06:36
Пожалуйста помогите мне если вам дам доступ можете исправить
#28 14 апреля 2016 в 06:56
Как удалить обновления обратно
#29 14 апреля 2016 в 07:07
Khushruz, Как вариант скачай установочный пакет, вытащи эти 3 файла github.com/instantsoft/icms2/commit/908b9b9fbc3f71911f59c63e03ce71e228278780 и замени. Если дизайн стандартный, то перезалей полностью без файла config и папки install. Так даже лучше, т.к. помимо этой ошибки, исправлены и другие...

После этого установи права 755 на все папки(рекурсивно) А для директорий /cache/ и /upload/ и всех вложенных в них установите права 777.
#30 14 апреля 2016 в 07:23
все три файла которые указана изменил не работает
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.