Перейти к публикации
Дизайн и модификация Invision Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
Атаман

Переезд на новый сервер. IPS 4.1 - права 777

Рекомендованные сообщения

Съехали на новый сервер, но не могу разораться с правами на папки.

 

Ситуация в следующем: Вышло новое оформление для форума, хотел воспользоваться функцией загрузить новую версию, выбрал файл и начал загрузку и выскочила ошибка

 

  Цитата

Извините, у вас нет для этого разрешений!

1S111/1 COULD_NOT_WRITE_FILE

 

Глянул в журнале Лог

#0 /var/www/site/site.com.ua/system/File/File.php(239): IPS\File\_FileSystem->save()
#1 /var/www/site/site.com.ua/applications/core/modules/admin/customization/themes.php(1306): IPS\_File::create('core_Theme', 'd0e70b4cbb9ab8a...', '\x89PNG\r\n\x1A\n\x00\x00\x00\rIHD...', 'set_resources_2', false, NULL, false)
#2 [internal function]: IPS\core\modules\admin\customization\_themes->IPS\core\modules\admin\customization\{closure}(Array)
#3 /var/www/site/site.com.ua/system/Helpers/MultipleRedirect/MultipleRedirect.php(93): call_user_func(Object(Closure), Array)
#4 /var/www/site/site.com.ua/applications/core/modules/admin/customization/themes.php(1466): IPS\Helpers\_MultipleRedirect->__construct(Object(IPS\Http\Url\Internal), Object(Closure), Object(Closure))
#5 [internal function]: IPS\core\modules\admin\customization\_themes->import()
#6 /var/www/site/site.com.ua/system/Dispatcher/Controller.php(85): call_user_func(Array)
#7 /var/www/site/site.com.ua/system/Node/Controller.php(63): IPS\Dispatcher\_Controller->execute()
#8 /var/www/site/site.com.ua/system/Dispatcher/Dispatcher.php(129): IPS\Node\_Controller->execute()
#9 /var/www/site/site.com.ua/admin/index.php(13): IPS\_Dispatcher->run()
#10 {main}

 

Обратил внимание, что управление ресурсами тоже внешнего вида не работали, вылечил выставлением прав css_built_х и set_resources_х и вложенных на них файлов.

 

Сделал эксперимент: установил внешний вид (аналогичный), и поверх попробовал его обновить (той-же) версией, и все прошло удачно.

 

Подскажите, где еще не выставлены права?

Поделиться сообщением


Ссылка на сообщение

Старые пути в System -> Files -> Store settings исправлены и кеш обновлен?

/uploads/

/datastore/

/plugins/

нужно выдать права на запись рекурсивно.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
  Цитата
Старые путь в System -> Files -> Store settings исправлены и кеш обновлен?

Да

 

  Цитата

/uploads/

/datastore/

/plugins/

Права на папки и на все папки и файлы которые внутри 777 ?

Поделиться сообщением


Ссылка на сообщение
  Атаман писал:

Права на папки и на все папки и файлы которые внутри 777 ?

Да. Особенно это касается uploads.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Спасибо, попробую

Поделиться сообщением


Ссылка на сообщение
09/22/16 12:34 (изменено)

Установил 777 на все, но безрезультатно, а могло повлиять то, что я вносил правки в внешний вид?

#0 /var/www/site/site.com.ua/system/File/File.php(239): IPS\File\_FileSystem->save()
#1 /var/www/site/site.com.ua/applications/core/modules/admin/customization/themes.php(1306): IPS\_File::create('core_Theme', 'd0e70b4cbb9ab8a...', '\x89PNG\r\n\x1A\n\x00\x00\x00\rIHD...', 'set_resources_2', false, NULL, false)
#2 [internal function]: IPS\core\modules\admin\customization\_themes->IPS\core\modules\admin\customization\{closure}(Array)
#3 /var/www/site/site.com.ua/system/Helpers/MultipleRedirect/MultipleRedirect.php(93): call_user_func(Object(Closure), Array)
#4 /var/www/site/site.com.ua/applications/core/modules/admin/customization/themes.php(1466): IPS\Helpers\_MultipleRedirect->__construct(Object(IPS\Http\Url\Internal), Object(Closure), Object(Closure))
#5 [internal function]: IPS\core\modules\admin\customization\_themes->import()
#6 /var/www/site/site.com.ua/system/Dispatcher/Controller.php(85): call_user_func(Array)
#7 /var/www/site/site.com.ua/system/Node/Controller.php(63): IPS\Dispatcher\_Controller->execute()
#8 /var/www/site/site.com.ua/system/Dispatcher/Dispatcher.php(129): IPS\Node\_Controller->execute()
#9 /var/www/site/site.com.ua/admin/index.php(13): IPS\_Dispatcher->run()
#10 {main}

Изменено пользователем Атаман

Поделиться сообщением


Ссылка на сообщение

Открыть \system\File\FileSystem.php

Найти

throw new \RuntimeException( 'COULD_NOT_WRITE_FILE' );

Заменить на

throw new \RuntimeException( 'COULD_NOT_WRITE_FILE' . "\n" . "File: {$folder}/{$this->filename}" . "\n" . "Chmod: ".substr(sprintf('%o', fileperms("{$folder}/{$this->filename}")), -4) );

Привести полный лог ошибки.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

1S111/1 COULD_NOT_WRITE_FILE File: /var/www/site/site.com.ua/uploads/set_resources_2/d0e70b4cbb9ab8afb1bc1065a3f8487a_wizard_step_extra@2x.png Chmod: 0777

 

Но на этот файл и так такие права 777

Поделиться сообщением


Ссылка на сообщение

Только, что странно владельцы отличаются

 

На свежеустановленной

Пользователь/группа

81 / apache

 

На старой теме

kms / apache

Поделиться сообщением


Ссылка на сообщение

Там может быть и баг.

 

Ну-ка попробуй заменить

 

!@\file_put_contents( "{$folder}/{$this->filename}", $contents )

на

@\file_put_contents( "{$folder}/{$this->filename}", $contents ) === FALSE

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
  Цитата
Только, что странно владельцы отличаются

Новая тема была создана пользователем под которым апач, старая перенесена пользователем по фтп. Chmod 777 должен разрешить запись всем пользователям.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

1S111/1 COULD_NOT_WRITE_FILE File: /var/www/site/site.com.ua/uploads/set_resources_2/d0e70b4cbb9ab8afb1bc1065a3f8487a_wizard_step_extra@2x.png Chmod: 0777

Поделиться сообщением


Ссылка на сообщение

Путь к этому файлу точно верный?

 

throw выше замени на

throw new \RuntimeException( 'COULD_NOT_WRITE_FILE' . "\n File: {$folder}/{$this->filename}" . "\n Chmod: ".substr(sprintf('%o', fileperms("{$folder}/{$this->filename}")), -4) ) . "\n Writable: ". (string) is_writable( "{$folder}/{$this->filename}" ). "\n Filegroup:".filegroup( "{$folder}/{$this->filename}" )."\n Fileowner".fileowner( "{$folder}/{$this->filename}" );

 

Попробуй сменить владельца файлов. Указать тот же пользователь, под которым работает апач.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Верный, запросил смену владельца. То ssh не дает менять (нет доступа).....

Поделиться сообщением


Ссылка на сообщение

set_resources_2 это старая или новая тема?

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...