Постоянно создаются пустые папки в папке upload?

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО InstantCMS 2.X
#1 26 февраля 2017 в 11:57
Постоянно стали создаваться пустые папке upload? Если раньше изображения хранились в папке 000, потом 001 и так далее с определенным периодом, то сейчас папки постоянно появляются пустые. С чем это связано? Сайт обновлен с версии InstantCMS 2.6.1 --> InstantCMS 2.7.0 --> InstantCMS 2.7.1.
Структура папок теперь такая, пример:

000 — много картинок; |
001 — много картинок; | было раньше;
002 — много картинок; |
--------------------------------
000 — много картинок; |
001 — много картинок; |
002 — много картинок; |
0b — 66 — папка — пустая папка; | сейчас
0c — 27 — папка — пустая папка; |
01 — 53 — папка — папка — картинка; |
2a — 76 — папка — пустая папка; |
Прикрепленный файл
33_d8dh3.jpg 40 Кб
#2 26 февраля 2017 в 12:24
dimanwwwwww
Для чего это? Изображения на сайт это лишний траф. Возможно отнестись к системе…
#3 26 февраля 2017 в 14:36


dimanwwwwww
Для чего это? Изображения на сайт это лишний траф. Возможно отнестись к системе...

Rainbow
Удобное имя. Давно пользуюсь этим именем. Пишите по существу!
#4 26 февраля 2017 в 18:21
У меня тоже такая же структура картинок. Мне тоже интересно почему она такая. Какая логика?
#5 26 февраля 2017 в 23:28
Подскажите где копать код?
#6 26 февраля 2017 в 23:28
Подскажите где копать код?
#7 26 февраля 2017 в 23:39

Подскажите где копать код?

dimanwwwwww
А что, собственно, вы накопать собираетесь (или до чего докопаться)?
#8 26 февраля 2017 в 23:40
А штоб никто не догадался! laugh

  1. * Создаёт дерево директорий для загрузки файла
  2. * @return string
  3. */
  4. public function getUploadDestinationDirectory(){
  5.  
  6. $dir_num_user = sprintf('%03d', intval($this->user_id/100));
  7.  
  8. $file_name = md5(uniqid(). $this->site_cfg->db_user . $this->site_cfg->db_base .microtime(true));
  9. $first_dir = substr($file_name, 0, 2);
  10. $second_dir = substr($file_name, 2, 2);
  11.  
  12. $dest_dir = $this->site_cfg->upload_path . "{$dir_num_user}/u{$this->user_id}/{$first_dir}/{$second_dir}/";
  13.  
  14. if(!is_dir($dest_dir)){
  15. @mkdir($dest_dir, 0777, true);
  16. @chmod($dest_dir, 0777);
  17. @chmod(pathinfo($dest_dir, PATHINFO_DIRNAME), 0777);
  18. @chmod($this->site_cfg->upload_path . "{$dir_num_user}/u{$this->user_id}", 0777);
  19. @chmod($this->site_cfg->upload_path . "{$dir_num_user}", 0777);
  20. }
  21.  
  22. return $dest_dir;
  23.  
  24. }
\system\core\uploader.php
#9 27 февраля 2017 в 19:45
dimanwwwwww, забей. Это фича. Ни на что не влияет.
#10 27 февраля 2017 в 19:52
P.S. Если напрягает настрой крон и добавь команду, Например такую
  1. find /path/to/dir -type d -empty -exec rmdir -pv '{}' \; 2>/dev/null
#11 28 февраля 2017 в 21:24


dimanwwwwww, забей. Это фича. Ни на что не влияет.

Lora
Как эту фичу обратно исправить с сохранением картинок, как раньше? Без прописывания задания для крона.
#12 1 марта 2017 в 12:36
На то она и фича, что её не исправить. smileЭто как бы особенность движка.
#13 1 марта 2017 в 16:14
да мусора много, как бы чистить на автомате?!
#15 1 марта 2017 в 18:30
В версии на гитхабе данное неудобство решено (хотя я и не знаю чем так смущали пустые директории, которые впоследствии всё равно используются). При удалении последнего файла, удаляется директория файла.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.