Призначено, для зберігання ваших зображень, як не дивно.
Просто увімкніть. Усюди, де це підтримується, воно почне працювати.
PHOTOSTORAGE_ENABLED=1
За замовчуванням, дані зберігаються в content/documents/photostorage. Ті, хто активно використовують зображення для ведення своєї господарської діяльності, можуть зіткнутися з проблемою “розпухання” директорії білінгу, що як мінімум нездорово, з точки зору швидкого бекапу даних. У таких випадках, починаючи з релізу 1.2.5 з'явилася можливість тримати ці дані практично де завгодно вашій душі. Від “просто іншої директорії” до “на зовнішньому хості і взагалі хочу свою хмару”.
Припустимо, ми хочемо витягнути, всі наші зображення, на якийсь зовнішній сервер, нехай він буде віртуалкою. Нехай його IP буде 192.168.0.5, наприклад.
Отож по пунктах:
ifconfig_vtnet0="inet 192.168.0.5 netmask 255.255.255.0"
# mkdir /share/ # mkdir /share/photostorage # chmod -R 777 /share
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/photostorage.
# mkdir /mnt/photostorage
# mount 192.168.0.5:/share/photostorage /mnt/photostorage
Для забезпечення автоматичного монтування директорії, зверніться до документації з вашої ОС.
Можливо, вам не хочеться взагалі піднімати 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/photostorage /mnt/photostorage
Не забуваємо перенести в нове місце наявні зображення з content/documents/photostorage/ в наше нове місце зберігання!
# mv /usr/local/www/apache24/data/billing/content/documents/photostorage/* /mnt/photostorage/
Можемо взагалі нічого не змінювати, та вказати просто нову директорію сховища та включити режим проксування самим модулем “сховище зображень” для віддачі зображень зі змонтованою ФС.
PHOTOSTORAGE_DIRECTORY="/mnt/photostorage/" PHOTOSTORAGE_URL_PREFIX="" PHOTOSTORAGE_PROXY_MODE=1
Можемо знизити навантаження на бекенд, наприклад, тупо сімлінкнувши нове місце зберігання кудись у місце доступне по HTTP:
# ln -fs /mnt/photostorage /usr/local/www/apache24/data/photosplace
і вказавши це якось так у конфізі
PHOTOSTORAGE_DIRECTORY="/mnt/photostorage/" PHOTOSTORAGE_URL_PREFIX="http://ваш_біллінг/photosplace/" PHOTOSTORAGE_PROXY_MODE=0
Можемо показувати зображення прямо з нашого зовнішнього хоста, піднявши там web-сервер, що дивиться у /share/photostorage
PHOTOSTORAGE_DIRECTORY="/mnt/photostorage/" PHOTOSTORAGE_URL_PREFIX="http://192.168.0.5/" PHOTOSTORAGE_PROXY_MODE=0
Ну, загалом ви зрозуміли. Все обмежується лише вашою фантазією.
Також, в Ubilling 1.4.3 з'явилась можливість автоматичної обробки всіх завантажуваних зображень.
; Чи ввімкнено після-обробку зображень при завантаженні в сховище зображень? Зображення просто відкриватимуться, ; читатимуться та зберігатимуться по-новому після завантаження. Вже саме по собі, це може суттєво зменшувати їх розмір. PHOTOSTORAGE_POSTPROCESSING=0 ; Додавати на зображення водяний знак з content/documents/watermark.png? Очевидно, що підтримується прозорість та даний файл переживає оновлення. PHOTOSTORAGE_WATERMARK=1 ; Змінювати рівень стиснення для jpeg/png з метою мініфікації та підвищення їх притомності? Теж радикально зменшує розмір файлів, що будуть збережені. PHOTOSTORAGE_RECOMPRESS=1 ; Чи ввімкнено автоматичну зміну розмірів великих зображень? Власне, наразі, зображення з будь-яким з вимірів більшим ; за 4k px буде продаунскейлено до 0.5х а зображення з будь-яким з вимірів більшим за 2к px буде продаунскейлено до 0.8х. PHOTOSTORAGE_AUTORESIZE=1 ; Вдруковувати в зображення відлагоджувальну інформацію, таку як дата, оригінальні розміри, оригінальний об'єм файлу, тощо. PHOTOSTORAGE_DRAWIMGINFO=1