Skip to content

Переезд на новый сервер. 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_х и вложенных на них файлов.

 

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

 

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

Featured Replies

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

/uploads/

/datastore/

/plugins/

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

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

Да

 

/uploads/

/datastore/

/plugins/

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

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

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

  • Author

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

  • Author

Установил 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}

Edited by Атаман

Открыть \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) );

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

  • Author

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

  • Author

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

 

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

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

81 / apache

 

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

kms / apache

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

 

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

 

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

на

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

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

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

  • Author

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}" );

 

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

  • Author

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

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

  • Author

Старая, установлена 2 недели назад (хочу обновить ее) вышла новая версия на иббфокусе.

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.