Возникла необходимость опубликовать фото в Интернете. Из доступных вариантов бесплатных фотогалерей выбор остановился на Gallery 2. Описание продукта можно посмотреть здесь. Посмотреть демо-версию можно здесь.
Итак, если заинтересовало - приступим к установке и настройке.
Первым делом необходимо скачать дистрибутив. В вверхнем правом углу главной страницы рускоязычного ресурса gallery2 виднеется ссылка "Скачать Gallery2". Галерею будем устанавливать многоязычную, версия Full, а поскольку ОС - FreeBSD, то соответственно в архиве tar.gz.
"Подсмотрев" ссылку, скачиваем дистрибутив непосредственно на веб-сервер и расспаковываем его:
# cd /usr/local/www/ # wget http://downloads.sourceforge.net/gallery/gallery-2.3-full.tar.gz 100%[===========================================================================>] 14 412 950 82,8K/s в 3m 7s 2009-10-02 13:18:18 (75,2 KB/s) - `gallery-2.3-full.tar.gz' сохранён [14412950/14412950] # tar -xzf gallery-2.3-full.tar.gz |
В результате у нас появился новый каталог gallery2. Можно оставить все как есть, но я бы рекомендовал в целях безопасности переименовать его. И архив удалить, чтобы не "путался под ногами". Кстати, и владельца файлов будет не лишним сменить ;)
# rm gallery-2.3-full.tar.gz |
Приступаем "рихтовать" конфиг апача. Вносим такой блок в /usr/local/etc/apache22/httpd.conf:
Alias /photo "/usr/local/www/photo" <Directory "/usr/local/www/photo"> AllowOverride FileInfo Options Order allow,deny Allow from all </Directory> |
Проверяем, не допустили ли мы ошибок, и если все ok, то перезапускаем Apache:
# apachectl configtest |
Далее в строке браузера набиваем http://ip_servera/photo/
Если не допустили ошибок, то откроется окно установки программы. Весь процесс установки состоит из приглашения, где можно выбрать язык инсталляции, и 11 шагов установки. Итак, выбираем язык установки, который вам более по душе, и жмем кнопку "Начать установку".
Шаг 1. Авторизация.
Gallery проверяет валидность пользователя, проверяя есть ли у него доступ с каталогу галереи. Для того, чтобы пройти авторизацию необходимо положить в корневой каталог галереи файл с названием login.txt, с условием, что он должен содержать сгенерированную случайным образом строку.
Ну что ж... Если надо, значит надо:
# echo '35acd317eff06327a38ab9efe3494897' >> /usr/local/www/photo/login.txt |
Потом жмем на кнопку "Идентифицировать меня" и переходим к шагу 2.
Шаг 2. Проверка системы.
В моем случае все проверки прошли успешно. Если же у вас какая-то из проверок выдала ошибку, проанализируйте чем она вызвана и исправьте ее. Переходим к шагу 3.
Шаг 3. Выбор типа установки.
Предлагается на выбор стандартная установка или мультисайтовая установка (тоесть несколько галерей на один сервер). Много галерей не планирую, поэтому выбираю стандартную установку. Переходим к следующему шагу.
Шаг 4. Создание хранилища.
Инструкции по созданию хранилища довольно подробны, так что проблем не должно возникнуть. Все таки рекомендую, в целях безопасности, вынести каталог хранилища за пределы корневой папки веб-сервера, в моем случае это /usr/local/www. Также изменим владельца каталога, чтобы веб-червер имел право записи в этот каталог.
# mkdir /var/photo_database |
Шаг 5. Установка базы данных.
Хранить наши данные будем в MySQL. Создадим пользователя MySQL, создадим базу данных и дадим созданному пользователю права на эту базу.
# mysql -u root -p
Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 31243 Server version: 5.0.84-log FreeBSD port: mysql-server-5.0.84 Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database `gallery`;
Query OK, 1 row affected (0.05 sec) mysql> create user 'gallery'@'localhost' identified by 'gallery_db_password';
Query OK, 0 rows affected (0.06 sec) mysql> grant all privileges on `gallery` . * to 'gallery'@'localhost';
Query OK, 0 rows affected (0.02 sec) mysql> exit
Bye |
Заполняем форму параметрами кодключения к базе данных и жмем "Сохранить" и переходим к следующему шагу.
Шаг 6. Создание администратора.
Думаю с этим пунктом, я думаю, проблем не должно возникнуть. Единственное что могу порекомендовать, так это взять для администратора галереи логин отличный от "admin" и пароль посложнее.
Шаг 7. Создание файла конфигурации.
Все мои достижения в этом пункте - это появление надписи "Конфигурационный файл создан успешно". Что ж... Перейдем к следующему шагу.
Шаг 8. Установка ядра галереи.
Здесь тоже просто пришлось подождать появления надписи, информирующей о том, что ядро галереи установлено успешно.
Шаг 9. Установка плагинов.
Теперь пора определиться с тем, какие модули нам нужны, а какие нет. Выделив нужные модули, жмем кнопку установки и активации этих модулей. По завершению установки модулей выводится отчет о текущем состоянии модулей (указываются модули, которые нуждаются в дополнительной настройке).
Шаг 10. Проверка безопасности.
Проверку безопасности пройдено. Переходим к шагу 11. Если же проверка не продена - проанализируйте ответ, выданий системой.
Шаг 11. Завершение установки.
Принимаем поздравления с успешной установкой Gallery 2.
Итак, галерея установлена. Рекомендую в целях безопасности удалить из каталога галереи инсталяционный каталог:
# rm -R /usr/local/www/photo/install/ |
Кажется пора посмотреть на результат. Войдем в галерею, используя логин и пароль администратора, указанный при установке. Дальнейшие настройки - на ваш вкус. Остановлюсь только еще на некоторых моментах, где необходимо вмешательство. Тоесть дополнительная настройка некоторых модулей.
Настройка "чистых ссылок"
Для настройки "чистых ссылок" необходимо соответствующим образом настроить mod_rewrite. Для начала убедимся, что он включен в основную конфигурацию веб-сервера:
# cat /usr/local/etc/apache22/httpd.conf | grep mod_rewrite LoadModule rewrite_module libexec/apache22/mod_rewrite.so |
Далее в корневой папке галереи создадим файл .htaccess и дадим Apache возможность записи в этот файл.
# touch /usr/local/www/photo.muff.kiev.ua/.htaccess |
В админке выбираем пункт "Модули и темы", находим модуль "URL Rewrite" и выбираем действие "Настроить". Переходим по доступной ссылке mod_rewrite и проходим тестирование. Вот и все. Теперь можно активизировать данный модуль и пользоваться его возможностями.
Модуль Dcraw.
Необходимо установить порт dcraw для работы с графикой.
# cd /usr/ports/graphics/dcraw/ |
В админке галереи перемещаемся в "Модули и темы", и в разделе "Графические инструменты" напротив модуля "Dcraw" жмем "Настроить". В поле "Путь к бинарному коду Dcraw" вводим значение "/usr/local/bin/dcraw". Проводим тестирование, и если тестирование прошло успешно, сохраняем настройки. Теперь у нас есть возможность активизировать данный модуль.
Модуль ffmpeg
Для работы данного модуля сначале необходимо установить порт ffmpeg.
# cd /usr/ports/multimedia/ffmpeg |
В админке галереи перемещаемся в "Модули и темы", и в разделе "Графические инструменты" напротив модуля "Ffmpeg" жмем "Настроить". В поле "Путь к Ffmpeg" вводим значение "/usr/local/bin/ffmpeg". Проводим тестирование, и если тестирование прошло успешно, сохраняем настройки. Теперь у нас есть возможность активизировать данный модуль.
Модуль ImageMagick
Для работы данного модуля сначале необходимо установить порт ImageMagick.
# cd /usr/ports/graphics/ImageMagick |
В админке галереи перемещаемся в "Модули и темы", и в разделе "Графические инструменты" напротив модуля "ImageMagick" жмем "Настроить". В поле "Путь к двоичному коду ImageMagick/GraphicsMagic" вводим значение "/usr/local/bin/". Проводим тестирование, и если тестирование прошло успешно, сохраняем настройки. Кстати, качество изображений рекомендую выставить в 100%.
Теперь у нас есть возможность активизировать данный модуль.
Модуль NetPBM
Для работы данного модуля сначале необходимо установить netpbm и jhead из коллекции портов.
# cd /usr/ports/graphics/netpbm |
В админке галереи перемещаемся в "Модули и темы", и в разделе "Графические инструменты" напротив модуля "NetPBM" жмем "Настроить". В поле "Путь к NetPBM" вводим значение "/usr/local/bin/". В поле "Путь к jhead" вбиваем "/usr/local/bin/". Проводим тестирование, и если тестирование прошло успешно, сохраняем настройки. Кстати, качество изображений тоже рекомендую выставить в 100%.
Теперь у нас есть возможность активизировать данный модуль.
Модуль загрузки архива
Для работы данного модуля сначале необходимо установить unzip из коллекции портов.
# cd /usr/ports/archivers/unzip |
В админке галереи перемещаемся в "Модули и темы", и в разделе "Импорт" напротив модуля "Загрузка архива" жмем "Настроить". В поле "Путь к unzip" вводим значение "/usr/local/bin/". Проводим тестирование, и если тестирование прошло успешно, сохраняем настройки. Кстати, чекбокс игнорирования проверки содержимого архива советую оставить включенным.
Теперь у нас есть возможность активизировать данный модуль.
Модуль загрузка zip
Для работы данного модуля сначале необходимо установить zip из коллекции портов.
# cd /usr/ports/archivers/zip |
В админке галереи перемещаемся в "Модули и темы", и в разделе "Коммерция" напротив модуля "Загрузка zip" жмем "Настроить". В поле "Путь к zip" вводим значение "/usr/local/bin/zip". Проводим тестирование, и если тестирование прошло успешно, сохраняем настройки. Теперь у нас есть возможность активизировать данный модуль.
Спасибо, много полезной
Спасибо, много полезной информации!
Может подскажите как решить вопрос: вначале превью для категорий имели один размер (меньший), а теперь решили его немного увеличить. Как результат все что созданно до изменений имеет побитый вид. Новые превью -нормальные.
Очистка кэша базы данных не помогла. Может что посоветуете?
Спасибо!
Можете вопрос перенести на
Можете вопрос перенести на форум?
К тому же было бы неплохо, указать ссылку.
5 шаг заканчивается вот
5 шаг заканчивается вот таким
"На сервере должен быть установлен PHP MySQL модуль"
На сервере не установлено
На сервере не установлено расширение PHP - php-mysql.
Re: Gallery2 - ваши фото в Internet
А откуда можно узнать - DB Hostname и DB Username?
Re: Gallery2 - ваши фото в Internet
DB Hostname - имя хоста, на котором размещена база данных. Если на этом же сервере, то значение - localhost.
DB Username - имя пользователя, при подключении к базе данных. В статье я указывал имя пользователя gallery (см. sql-запрос: create user 'gallery'@'localhost' identified by 'gallery_db_password';)