Поздравляю тех, кто дочитал - сегодня переходим к собственно цели - как хостить фотографии. Тема непростая, и, к сожалению, требует значительно бОльших телодвижений чем просто нажимать кнопки в Control Panel’и.
Большинство CMS (context management systems) написаны, мягко говоря, отвратительно. Отвратительность состоит в том, что они написаны исходя из рукожопости разработчиков, а не из удобства для пользователей. Такие CMS написаны вокруг их собственных баз данных, все структуры типа альбомов - все в базе данных, вся иерархия файлов - все в базе данных, ну, в общем, вы понели.
Без баз данных не обойтись, там хранятся users’ accounts, permissions, имена картинок (если не совпадает с именами файлов), но это не означает, что в базе должно быть ВСЁ. Скорее наоборот. И если выбирать CMS, то только такую, в которой, если снести базу данных, то как минимум, альбомы никуда не денутся, и все галерею картинок можно будет поднять с чистой/vanilla базой данных, и таких CMS практически одна -
zenphoto. С ней-то мы и попытаемся взлететь.
LAMP
Все CMS - это так называемые
LAMP service‘ы. Synology поддерживает платформу/инфраструктуру для LAMP, но компоненты придется устанавливать руками. План работ таков:
- Линукс: нужно будет загрузить zip file с Zenphoto и его распаковать. Делается через SSH. Наверное, можно сделать через Synology File Manager, но я не уверен, что там легно сделать user permissions. На самом деле, не так страшно, три линуксовые комманды. Единственная часть, где “думай, что пишешь”, а не “пиши, что думаешь”
- Апач: конфигурируется через Synology Web Station UI. Руками ничего писать не надо
- MySql: надо будет нажать много кнопок, руками ничего не пишется.
- ПэХаПэ (PHP): см. Апач, делается через UI.
На само деле, ни разу не сложно, хотя звучит пугающе. Первый раз придется наступить на какие-нибудь грабли, но если делать второй раз, то Zenphoto ставится за полчаса - когда знаешь, куда нажимать. И начнем мы с MySQL, остальное сделаем в следующий раз.
MySql
Идем на Synology Desktop, тыкаем в Package Center и убеждаемся, что MariaDB и phpMyAdmin установлены. Они должны быть там по умолчанию, но если вдруг не, то их надо установить.
Tыкаем в MariaDB/open. Дефолтивный административный эккаунт - root. Пароль обычно/изначально совпадает с административным паролем Synology root, это, разумеется, стоит поменять, а когда вы этот пароль успешно забудете, есть кнопка “Reset Password”. Унесите пудинг закрываем MariaDB конфигурацию, возвращаемся в Package Center и кликаем на phpMyAdmin. Он откроется в новом табе. Логинимся root/ваш пароль
Тут я бы посоветовал зайти на zenphoto.org и посмотреть, какая у них текущая версия (сегодня это 1.6.2, и мы этим будем пользоваться). Обычно это плохая практика, называть директории и базы данных с префиксами/суффиксами текущих версий, потому что updates. С другой стороны, Zenphoto тем и хороша, что можно не рисковать update’ами, а строить заново, потому как если update снесет что-то важное, восстанавливать будет не проще. Так что вместо базы данных по имени zenphoto я бы посоветовал назвать базу данных zenphoto-1-6-2
В phpMyAdmin слева есть список баз данных, как минимум там будут information_schema и mysql. А сверху есть кнопка “New”, ee и жмем. В поле под “Create Database” пишем что-то вроде “zenphoto-1-6-2” без кавычек и жмем “Create”. Попадаем на страницу со множеством табов, и идем на “Privileges”
Жмем “add new user”, заполняем анкету по картинке. Очень важно дать все permissions, чекбоксы отмечено стрелочками. А еще важнее запомнить пароль, потому как это пароль для юзера Zenphoto, не тоже самое, что административный пароль, это пароль который нам понадобиться для инсталляции Zenphoto, этот пароль надо запомнить и не забыть. Не уверен, что получилось убедительно, поэтому еще раз - запомните user name/password for Zenphoto database. Pretty please, with cherry on top.
Внизу страницы жмем “Go”. Убеждаемся, что все хорошо.
Специально написал мало, поскольку тут уже достаточно простора для грабель. Но если справились, то дальше будет только легче.
Cross-posted from
here