フォトライブラリー(Zenphoto)のインストール方法(ロリポップでの実例)

無料(オープンソース)のフォトライブラリーのシステムを探していて、ZenphotoというCMSがよさそうなのでロリポップのロリポプラン(月250円)に入れてみました。

このZenphotoの最大のメリットは、FTPで写真(画像)をアップロードしても、自動的にデータベースに登録できる点でした。もちろん管理画面から複数画像を登録&アップロードする機能もありましたが、FTPはやはり楽です。

さらに最近はデジタルカメラで撮った写真なので、画像データに含まれる撮影年月日ほかの情報も読み出して、画像情報として表示してくれる点もメリットでした。

photo1

さて、そのZenphotoはPHPとMySQLがサーバの要件ですが、ロリポップの月250円のロリポプランではどうかと思い、入れてみることにしました。

先に結論を言うと、Zenphotoの管理画面は劇重なので大量なフォトライブラリーだと、そんな共用サーバよりVPSあたりがいいのかも知れません。

しかし、月250円ですからね。

管理画面が重いのは我慢ですかね。
しかし尋常ではない重さ(遅さ)なので、お金に余裕がある場合は共用サーバでもスタンダードプラン(500円~)とか、XserverのX10プラン(1,000円~)のほうがマシ化と思います。

とりあえずやったことは下記。

(1)Zenphoto公式サイトから最新版をダウンロード
 私がDLしたのは、Zenphoto 1.4.9 (Jul 09, 2015)でした。

(2)ロリポのサーバのルート直下にFTPでアップロード
ZIP版を解凍し「zenphoto-zenphoto-1.4.9」フォルダの中身だけを(ディレクトリは作るつもりはなかったので)ルート直下にUPしました。

(3)セットアップページを開いてエラーを解決する
FTPでUPしたあと、ブラウザでそのディレクトリにアクセスします。
私の場合はルート直下にUPしましたけど。

すると下記の画面が・・。

zen1

zp-dataセキュリティ 【危険(is compromised)】
警告!
Zenphotoは所有者のみがアクセスできる(パーミッションは0600)zp-dataフォルダーの機密ファイルを作成することをおすすめします。setup.logのファイルのパーミッションは未承認アクセスを許可できる0644である必要があります。

PHP セッション 【save_save_pathに問題が有ります。】
警告!
設定したPHPセッションパスは使用することができませんでした。Zenphotoはzp-dataフォルダーへパスを設定します。

これらの警告は無視でOKかと思います。

やらなければならないのは「エラー」と表示された項目。

zen2

設定ファイルのデータベース資格情報
エラー!
MySQLi レポート: Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)

エラーというより、データベースを事前にセットしておかないとダメよというものですね。

(4)ロリポの管理画面でデータベースを作成
ここでZenphotoのセットアップページは開いたまま、ブラウザの別タブか別窓でロリポの管理画面を開きます。
WEBツール>データベースと進み。

zp3

データベース作成を押して・・

zp4

そこに書かれた情報を、さきほどのセットアップページに入力します。

最初の選択肢、「MySQLi」または「MySQL]ですが、ロリポプランではどちらでも可。

あとはロリポの管理画面でデータベースを作成を実行し、データベースユーザ、データベースパスワード、データベースホスト(サーバー)、データベース名の項目を画面を見ながら埋めていきます。

データベースのテーブルプレフィックスは、Zenphotoなので「zp_」としてみました。

そこでOKかと思ったら、今度は、

ファイルシステムの文字セット定義はUTF‑8です【テストは実行されません】
警告!
ファイルシステムの文字セット定義をUTF-8に変更します

と表示が出たので、UTF-8を「適用」をクリックすると・・・
An attempt at cross site reference forgery has been blocked.
という画面に。

バックボタンを2度押しして、もう1回UTF-8を「適用」をクリックすると・・・
セットアップページに戻り、なんだかうまく行きました。

(5)管理者の設定
セットアップページの最下部にある「実行」ボタンを押すと、下記の画面に。

zp5

画面下の「管理ユーザ名とパスワードを設定する必要があります。」というリンクを押すと、Zenphotoライセンス契約の画面に遷移。

zp6

「私はこれらの諸条件に同意します」ボタンを押すと、ユーザー登録画面に。

zp7

User名とパスワードを登録しますが、ここにある「パスワードリセット」というのが「?」でしたが、要はパスワード確認入力でした。

入力後「適用」を押すと下記ログイン画面。

zp8

無事、ログインできました。

(6)セットアップファイルを削除して完了

そういえば、パーミッションの問題でセットアップできないとか、そういった警告はありませんでしたが、「オーバービュー」の画面にいくと、警告が・・。

セットアップファイルを削除しないと危険ということで、
/zp-core/setup.php
/zp-core/setup
を削除しました。

基本的には以上でセットアップは完了ですが、気付いた注意点とカスタマイズについて書き足しておきます。

・フォトライブラリーのアルバム名は、半角英数にする。
 アルバム=URLのDirとなるため、全角(日本語)名だと「–」となって認識してくれません。
 なお下記のようにアルバムの下にサブアルバム、さらにサブアルバムと階層を作ることができます。
/albums/に下に登録したいアルバムを管理画面で登録するか、FTPでアップロードします。

例えば、下記のように階層を作って整理することができます。
Kanto
┣Ibaraki
┣Gunma
┗Tochigi
  ┣Nasu
  ┗NIkko

・デフォルトではログイン画面への誘導がない。
 ログアウトすると、ライブラリーのTOPに遷移しますが、再ログインしようと思ってもログインへの誘導がありません。面倒なので、ギャラリーTOPページにログイン/ログアウトを設定で付けました。
 設定の仕方は、
 Zenphoto管理画面>プラグイン>ユーザと進んで利用可能なプラグインから「user_login-out」のチェックボックスをONにします。

これだけだとギャラリーTOPページのフッターに小さくLoginとリンクが付くだけで、ギャラリーの写真そのものはログインなしに見ることができます。

・限られたログインユーザーだけにライブラリーを公開する
 グループメンバーだけのギャラリーにするような使い方もできます。
 設定に仕方は、
 Zenphoto管理画面>オプション>ギャラリーと進んで、「ギャラリーのタイプ」の項に、公開・非公開のラジオボタンがあるので、そこで非公開を選択すると、トップ画面がいきなりログイン画面になります。

・ギャラリー画面のカスタマイズ
 使っているテーマ(デザイン)はデフォルトの「Basic」というものですが、横幅が狭く、アルバムの表示数も少ないというか、最近の高解像度のPC画面では物足りなさを感じました。

そこでやったことは2つ。
1つは管理画面での設定で、テーマ>テーマオプションbasicを設定と進みます。

photo2

管理画面がみづらいというか誤解しやすいですが、
行毎のサムネイル;2を3に。(1行横列にアルバム3つ)
ページ毎のサムネイル:6を12に。(縦3行で合計12個表示)
と設定しました。

ただ、これだけではうまくいきません。
実は画面のスタイルシートが邪魔しているのです。
そのため、
/themes/basic2/styles/light.css

にある#mainと#imagesの指定を少し変更しました。
#main {
display: inline-block;
text-align: left;
margin: 20px auto;
width: 1040px; /*685pxを広げた*/
background: #fff;
padding: 20px 30px 70px;
/* border指定をすべて削除 */
}

#images {
float: left;
width: 1040px; /*650pxを広げた*/
border: 0px solid gray;
}

この結果、表示は下記のような感じになりました。
(下記の写真はレイアウトを見せるためのダミーです。)

zp9

その他、ライブラリーやアルバム、写真登録などは習うより慣れろ状態で、直観的にできるかと思います。
フォトライブラリー作成にご興味のある方はお試しください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください