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

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


Сайдбар

Розділи

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

FAQ



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

photostorage

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


Сховище зображень

Призначено, для зберігання ваших зображень, як не дивно.

Ввімкнення

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

config/alter.ini
PHOTOSTORAGE_ENABLED=1

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

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

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

Припустимо, ми хочемо витягнути, всі наші зображення, на якийсь зовнішній сервер, нехай він буде віртуалкою. Нехай його 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/photostorage
# 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/photostorage.

  • Створюємо цю директорію:
# mkdir /mnt/photostorage
  • Монтуємо в неї нашу шару 192.168.0.5
# 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/

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

Можем вообще ничего не менять и указать просто новую директорию хранилища и включить режим проксирования самим модулем “хранилище изображений”, для отдачи изображений со смонтированной ФС.

config/alter.ini
PHOTOSTORAGE_DIRECTORY="/mnt/photostorage/"
PHOTOSTORAGE_URL_PREFIX=""
PHOTOSTORAGE_PROXY_MODE=1

Можем понизить нагрузку на бэкэнд, например, тупо симлинкнув новое место хранения куда-то в место доступное по HTTP:

# ln -fs /mnt/photostorage /usr/local/www/apache24/data/photosplace

и указав это как-то так в конфиге

config/alter.ini
PHOTOSTORAGE_DIRECTORY="/mnt/photostorage/"
PHOTOSTORAGE_URL_PREFIX="http://ваш_биллинг/photosplace/"
PHOTOSTORAGE_PROXY_MODE=0

Можем показывать изображения прямо с нашего внешнего хоста, подняв там web-сервер, смотрящий в /share/photostorage

config/alter.ini
PHOTOSTORAGE_DIRECTORY="/mnt/photostorage/"
PHOTOSTORAGE_URL_PREFIX="http://192.168.0.5/"
PHOTOSTORAGE_PROXY_MODE=0

Ну в общем вы поняли. Все ограничивается только вашей фантазией.

photostorage.1676972457.txt.gz · Востаннє змінено: 2023/02/21 11:40 повз nightfly