Користувальницькькі налаштування

Налаштування сайту


Сайдбар

Розділи

Загальний опис
Історія змін
Рекомендації щодо оновлення
Плани на майбутнє
Відомі проблеми
Онлайн демо
Люди
Трохи про безпеку

FAQ



Редагувати сайдбар

filestorage

Це стара версія документу!


Системне сховище файлів

Не повірите - призначено для зберігання ваших файлів.

Ввімкнення

Просто увімкніть. Усюди, де це підтримується, воно почне працювати.

config/alter.ini
FILESTORAGE_ENABLED=1

Винесення даних кудись подалі

За замовчуванням, дані зберігаються в content/documents/filestorage. Ті, хто активно використовують цей функціонал, для ведення своєї господарської діяльності, можуть зіткнутися з проблемою “розпухання” директорії білінгу, що як мінімум нездорово, з точки зору швидкого бекапу даних. У таких випадках, починаючи з релізу 1.6.2 з'явилася можливість тримати ці дані практично де завгодно вашій душі. Від “просто іншої директорії” до “на зовнішньому хості і взагалі хочу свою хмару”.

Конфігурація зовнішнього хоста

Припустимо, ми хочемо витягнути, всі наші файли сховища, на якийсь зовнішній сервер, нехай він буде віртуалкою. Нехай його IP буде 192.168.0.5, наприклад.

Отож по пунктах:

  • Встановлюємо чисту FreeBSD, чи що ви там хочете або чим вмієте користуватися. Неважливо.
  • Конфігуруємо на ній мережу
/etc/rc.conf
ifconfig_vtnet0="inet 192.168.0.5 netmask 255.255.255.0"
  • Створюємо директорію, в якій ми зберігатимемо файли
# mkdir /share/
# mkdir /share/filestorage
# chmod -R 777 /share
  • Експортуємо директорію як NFS, хоча можете використовувати будь-що, хоч CIFS хоч sshfs на ваш смак.
/etc/rc.conf
rpcbind_enable="YES"
nfs_server_enable="YES"
nfs_server_flags="-u -t -n 4"
mountd_enable="YES"
mountd_flags="-r"
/etc/exports
/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/

Конфігурація білінгу

Потрібно просто вказати нову директорію для файлів

config/alter.ini
FILESTORAGE_DIRECTORY="/mnt/photostorage/"

Про розміри

За максимальний розмір завантажуваних файлів відповідають рівно дві опції php.ini:

php.ini
;Максимальний розмір всієї форми
post_max_size = 64M
;Максимальний розмір одного файлу, що завантажується
upload_max_filesize = 64M
filestorage.1778770485.txt.gz · Востаннє змінено: 2026/05/14 17:54 повз nightfly