====== Системне сховище файлів ====== Не повірите - призначено для зберігання ваших файлів. ====== Ввімкнення ====== Просто увімкніть. Усюди, де це підтримується, воно почне працювати. FILESTORAGE_ENABLED=1 ====== Винесення даних кудись подалі ====== За замовчуванням, дані зберігаються в **content/documents/filestorage**. Ті, хто активно використовують цей функціонал, для ведення своєї господарської діяльності, можуть зіткнутися з проблемою "розпухання" директорії білінгу, що як мінімум нездорово, з точки зору швидкого бекапу даних. У таких випадках, починаючи з релізу 1.6.2 з'явилася можливість тримати ці дані практично де завгодно вашій душі. Від "просто іншої директорії" до "на зовнішньому хості і взагалі хочу свою хмару". ===== Конфігурація зовнішнього хоста ===== Припустимо, ми хочемо витягнути, всі наші файли сховища, на якийсь зовнішній сервер, нехай він буде віртуалкою. Нехай його IP буде 192.168.0.5, наприклад.\\ Отож по пунктах: * Встановлюємо чисту FreeBSD, чи що ви там хочете або чим вмієте користуватися. Неважливо. * Конфігуруємо на ній мережу ifconfig_vtnet0="inet 192.168.0.5 netmask 255.255.255.0" * Створюємо директорію, в якій ми зберігатимемо файли # mkdir /share/ # mkdir /share/filestorage # chmod -R 777 /share * Експортуємо директорію як NFS, хоча можете використовувати будь-що, хоч CIFS хоч sshfs на ваш смак. rpcbind_enable="YES" nfs_server_enable="YES" nfs_server_flags="-u -t -n 4" mountd_enable="YES" mountd_flags="-r" /share -alldirs -maproot=root тут_IP_вашого_білінгу * Перезавантажуємо сервер, щоб переконатися, що все нормально стартує ===== Монтування на білінговий сервер ===== Припустимо, ми збираємось зберігати файли локально на білінговому сервері, в змонтованій директорії **/mnt/filestorage**. * Створюємо цю директорію: # mkdir /mnt/filestorage * Монтуємо в неї нашу шару 192.168.0.5 # mount 192.168.0.5:/share/filestorage /mnt/filestorage Для забезпечення автоматичного монтування директорії, зверніться до документації з вашої ОС. Можливо, вам не хочеться взагалі піднімати NFS, CIFS або ще щось і вам здається, що досить ssh. Да без проблем: # pkg install fusefs-sshfs # kldload fuse # sysctl vfs.usermount=1 # devfs ruleset 10 # devfs rule add path 'fuse*' mode 666 # sshfs -o allow_other somelogin@192.168.0.5:/share/filestorage /mnt/filestorage Не забуваємо перенести в нове місце наявні файли сховища з **content/documents/filestorage/** в наше нове місце зберігання! # mv /usr/local/www/apache24/data/billing/content/documents/filestorage/* /mnt/filestorage/ ===== Конфігурація білінгу ===== Потрібно просто вказати нову директорію для файлів FILESTORAGE_DIRECTORY="/mnt/filestorage/" ====== Про розміри ====== За максимальний розмір завантажуваних файлів відповідають рівно дві опції php.ini: ;Максимальний розмір всієї форми post_max_size = 64M ;Максимальний розмір одного файлу, що завантажується upload_max_filesize = 64M