Lycheeというツールがあります。
Web上で動くアルバムツールです。天文写真初めて、撮った写真を一覧したいなぁと思って、これを使ってみることにしました。
手順はこのサイトをほぼそのまんまです。(構築してたときはサイト繋がったんですけど、今、繋がりませんね。どーしたんだろ?)
なお、Lycheeでぐぐると、Redmine のプラグインが圧倒的に当たるんですけど、別物です。
そいでまって、私が建てるんだから、とーぜん FreeBSD で建てます。FreeBSD の Ports に www/lychee というのがあるんですが、これも別物です。
ちうわけで、行ってみましょう。
まずは FreeBSD をインストールします。これは猫でもできるので省略。
Ports から必要なパッケージを入れていきます。
- www/mod_php74
- lang/php74-extensions
- GD
- mbstring
- mysql
- EXIF
- zip
- graphics/pecl-imagick
- databases/mysql80-server
MySQL は最近だと10系なんですが、10だとうまく動きませんでした。なんで 8 です。ちなみに、MySQL は 9 系が欠番です。
つぎに php.ini を編集します。
max_execution_time = 200
post_max_size = 200M
upload_max_filesize = 200M
max_file_uploads = 100
httpd.conf も編集します。単にPHPの実行を許可するだけですけど
<IfModule mime_module>
AddType application/x-httpd-php .php
</IfModule>
my.cnf も編集します。
/var/db/mysql を別ディスクにして、データ領域を分けたんで、ちとへんな設定をしてます。ディレクトリ関連は Default でもいいでしょう。
[mysql]
default-character-set = utf8
[mysqld]
datadir = /var/db/mysql/data
tmpdir = /var/db/mysql/mysql_tmpdir
slave-load-tmpdir = /var/db/mysql/mysql_tmpdir
secure-file-priv = /var/db/mysql/mysql_secure
character-set-server = utf8
skip-character-set-client-handshake
MySQL に初期 DB を登録します。パスワードはてきとーに設定してくださいませ。
create database photo;
CREATE USER photoadmin@'%' IDENTIFIED BY 'password';
GRANT ALL ON photo.* TO photoadmin@'%';
FLUSH PRIVILEGES;
alter user photoadmin@'%' identified with mysql_native_password by 'password';
Lychee 本体を展開します。
cd /root/Lychee/
fetch https://github.com/electerious/Lychee/archive/v2.7.0.zip
unzip v2.7.0.zip
cd /root/Lychee/Lychee-2.7.0/
cp -r favicon.ico index.html php data uploads view.php plugins dist src /usr/local/www/apache24/data/lychee/
cd /usr/local/www/apache24/data
chown -R www:www lychee/
cd /usr/local/www/apache24/data/lychee
chmod 777 data/
日本語パッチを適用します。
fetch http://www.kurobuti.com/document/lychee/_downloads/Lychee-2.7.0_jp.patch.gz
gunzip -c Lychee-2.7.0_jp.patch.gz > /usr/local/www/apache24/data/lychee/lychee-2.7.0_jp.patch
cd /usr/local/www/apache24/data/lychee
patch -p1 < lychee-2.7.0_jp.patch
以上!!
と言いたいところですが、ここまでは参考サイトそのまんま。んで、実はこれでは動きません。写真ファイルのアップロードに失敗します。
/usr/local/www/apache24/data/lychee/php/modules/Photo.php の修正が必要です。
オリジナルでは変数 $medium に true / false を代入しているのですが、どうやらデータベース上では medium カラムが整数で定義されているらしく、数値を入れないと動きません。
Photo.php.txtを置いときますんで、手元のソースと比較してくださいませ。(Webサイト上に置く都合で、拡張子を変えてます)
さて動きました。
画面はこんな感じです。
コメントする