EC-CUBE 2.11インストール手順

「EC-CUBE」というのは日本企業が開発されているオンラインショップ構築のオープンソースです。
EC-CUBE (株式会社ロックオン)
「2.11」バージョンでスマートフォン対応もしたということで、インストールしてみました。2.4のインストール手順はたくさんありますが、2.11になってまだ日が浅いためか、詳細なインストール手順がなかったので、とりあえず手探りで入れてみました。
今回の構成は次のとおり
CentOS 5.5
PHP 5.2.11
MySQL 5.0.77
まずはホームページから最新版をダウンロードして解凍し、中の「data」フォルダと「html」フォルダをアップロードします。
ECサイトのルートはhtmlフォルダとなります。ここからはブラウザでアクセスしながら、一方でコマンドを実行していきます。
EC-CUBE 2.11.2インストール
最初からエラーメッセージが表示されました。
/home/fsadmin/jsampo/public/eccube/html/../data/cache/ にユーザ書込み権限(777等)を付与して下さい。
2.4バージョンでも書込み権限の必要なフォルダはありましたが、変更されている可能性もありますので、順番に行きます。
data/cacheフォルダに書込み権限を付与します。

# cd /home/fsadmin/jsampo/public/eccube/data
# chmod 777 -R cache

ブラウザをリロード
EC-CUBE 2.11.2インストール
またエラーメッセージが表示されました。

Warning: mkdir() [function.mkdir]: 許可がありません in /home/fsadmin/jsampo/public/eccube/data/class/SC_Initial.php on line 249
Warning: mkdir() [function.mkdir]: 許可がありません in /home/fsadmin/jsampo/public/eccube/data/class/SC_Initial.php on line 253
Warning: mkdir() [function.mkdir]: 許可がありません in /home/fsadmin/jsampo/public/eccube/data/class/SC_Initial.php on line 257
Warning: mkdir() [function.mkdir]: 許可がありません in /home/fsadmin/jsampo/public/eccube/data/class/SC_Initial.php on line 261
/home/fsadmin/jsampo/public/eccube/html/install/tempにユーザ書込み権限(777, 707等)を付与して下さい。

簡単なほうから、html/tempフォルダに書込み権限を付与します。

# cd /home/fsadmin/jsampo/public/eccube/html/install
# chmod 707 -R temp

上のエラーはフォルダ作成権限がないというものですが、data/Smarty/templates_cに書き込み権限がないということなので付与する。

# cd /home/fsadmin/jsampo/public/eccube/data/Smarty
# chmod 777 -R templates_c

EC-CUBE 2.11.2インストール
ようやくインストールの開始画面が表示されました。
EC-CUBE 2.11.2インストール
チェック結果が表示されました。さらに権限エラーがたくさん出ています。
フォルダには書込み、実行権限を、中のファイルには書込み権限を付与します。
中のファイルまですべて表示されているので長いですが、要約すると次のフォルダが対象です。
html
html/user_data 以下
html/upload 以下
data/class 以下
data/Smarty/templates 以下
data/downloads 以下
data/upload/csv
data/cache 以下
コマンドにすると次のようになります。

# cd /home/fsadmin/jsampo/public/eccube/html/user_data
# chmod 606 __default.php
# chmod 707 css
# chmod 606 css/common.css
# chmod 707 -R include
# chmod 707 -R packages
# chmod 606 packages/admin/css/*.css
# chmod 606 packages/admin/img/basis/*.gif
# chmod 606 packages/admin/img/button/*
# chmod 606 packages/admin/img/common/*
# chmod 606 packages/admin/img/contents/*
# chmod 606 packages/admin/img/header/*
# chmod 606 packages/admin/jquery.multiselect2side/js/jquery.multiselect2side.js
# chmod 606 packages/admin/jquery.multiselect2side/jmultiselect2side.html
# chmod 606 packages/admin/jquery.multiselect2side/jmultiselect2side.html
# chmod 606 packages/admin/js/*
# chmod 606 packages/default/css/*
# chmod 606 packages/default/img/ajax/*
# chmod 606 packages/default/img/background/*
# chmod 606 packages/default/img/banner/*
# chmod 606 packages/default/img/button/*
# chmod 606 packages/default/img/common/*
# chmod 606 packages/default/img/icon/*
# chmod 606 packages/default/img/picture/*
# chmod 606 packages/default/img/title/*
# chmod 606 packages/default/sql/*
# chmod 606 packages/mobile/img/header/*
# chmod 606 packages/sphone/css/*.css
# chmod 606 packages/sphone/css/images/*
# chmod 606 packages/sphone/img/button/*
# chmod 606 packages/sphone/img/common/*
# chmod 606 packages/sphone/img/header/*
# chmod 606 packages/sphone/img/icon/*
# chmod 606 packages/sphone/js/*.js
# chmod 606 packages/sphone/js/images/*
# chmod 606 packages/sphone/js/jquery.facebox/*
# chmod 707 -R plugins
# chmod 606 plugins/*.xml
# chmod 606 plugins/google_analytics/*.php
# chmod 606 plugins/google_analytics/admin/*
# chmod 606 plugins/google_analytics/classes/pages/*
# chmod 606 plugins/google_analytics/sql/*
# chmod 606 plugins/google_analytics/tpl/*.tpl
# chmod 606 plugins/google_analytics/tpl/admin/*.tpl
# chmod 606 plugins/recommend/*.php
# chmod 606 plugins/recommend/admin/*
# chmod 606 plugins/recommend/classes/*
# chmod 606 plugins/recommend/img/*
# chmod 606 plugins/recommend/sql/*
# chmod 606 plugins/recommend/tpl/*.tpl
# chmod 606 plugins/recommend/tpl/admin/*.tpl
# chmod 707 -R templates
# cd ..
# chmod 707 -R upload
# chmod 606 upload/save_image/*
# cd ../data
# chmod 707 -R class
# chmod 606 class/*.php
# chmod 606 class/batch/*
# chmod 606 class/db/*.php
# chmod 606 class/db/dbfactory/*
# chmod 606 class/graph/*
# chmod 606 class/helper/*
# chmod 606 class/module/*
# chmod 606 class/pages/*.php
# chmod 606 class/pages/forgot/*
# chmod 606 class/pages/admin/*.php
# chmod 606 class/pages/admin/basis/*
# chmod 606 class/pages/admin/contents/*
# chmod 606 class/pages/admin/customer/*
# chmod 606 class/pages/admin/design/*
# chmod 606 class/pages/admin/mail/*
# chmod 606 class/pages/admin/order/*
# chmod 606 class/pages/admin/ownersstore/*
# chmod 606 class/pages/admin/plugin/*
# chmod 606 class/pages/admin/products/*
# chmod 606 class/pages/admin/system/*
# chmod 606 class/pages/admin/total/*
# chmod 606 class/pages/cart/*
# chmod 606 class/pages/contact/*
# chmod 606 class/pages/entry/*
# chmod 606 class/pages/error/*
# chmod 606 class/pages/forgot/*
# chmod 606 class/pages/frontparts/*.php
# chmod 606 class/pages/frontparts/bloc/*
# chmod 606 class/pages/guide/*
# chmod 606 class/pages/mypage/*
# chmod 606 class/pages/order/*
# chmod 606 class/pages/preview/*
# chmod 606 class/pages/products/*
# chmod 606 class/pages/regist/*
# chmod 606 class/pages/rss/*
# chmod 606 class/pages/shopping/*
# chmod 606 class/pages/unsupported/*
# chmod 606 class/pages/upgrade/*.php
# chmod 606 class/pages/upgrade/helper/*
# cd Smarty
# chmod 707 -R config templates
# chmod 606 templates/admin/*.tpl
# chmod 606 templates/admin/adminparts/*
# chmod 606 templates/admin/basis/*
# chmod 606 templates/admin/contents/*
# chmod 606 templates/admin/css/*
# chmod 606 templates/admin/customer/*
# chmod 606 templates/admin/design/*
# chmod 606 templates/admin/mail/*
# chmod 606 templates/admin/order/*
# chmod 606 templates/admin/ownersstore/*
# chmod 606 templates/admin/pdf/*
# chmod 606 templates/admin/plugin/*
# chmod 606 templates/admin/products/*
# chmod 606 templates/admin/system/*
# chmod 606 templates/admin/total/*
# chmod 606 templates/default/*.tpl
# chmod 606 templates/default/abouts/*
# chmod 606 templates/default/cart/*
# chmod 606 templates/default/contact/*
# chmod 606 templates/default/entry/*
# chmod 606 templates/default/forgot/*
# chmod 606 templates/default/frontparts/*.tpl
# chmod 606 templates/default/frontparts/bloc/*
# chmod 606 templates/default/guide/*
# chmod 606 templates/default/mail_templates/*
# chmod 606 templates/default/mypage/*
# chmod 606 templates/default/order/*
# chmod 606 templates/default/products/*
# chmod 606 templates/default/regist/*
# chmod 606 templates/default/rss/*
# chmod 606 templates/default/shopping/*
# chmod 606 templates/mobile/*.tpl
# chmod 606 templates/mobile/cart/*
# chmod 606 templates/mobile/contact/*
# chmod 606 templates/mobile/entry/*
# chmod 606 templates/mobile/forgot/*
# chmod 606 templates/mobile/frontparts/bloc/*
# chmod 606 templates/mobile/guide/*
# chmod 606 templates/mobile/mail_templates/*
# chmod 606 templates/mobile/mypage/*
# chmod 606 templates/mobile/order/*
# chmod 606 templates/mobile/products/*
# chmod 606 templates/mobile/regist/*
# chmod 606 templates/mobile/shopping/*
# chmod 606 templates/mobile/unsupported/*
# chmod 606 templates/sphone/*.tpl
# chmod 606 templates/sphone/abouts/*
# chmod 606 templates/sphone/cart/*
# chmod 606 templates/sphone/contact/*
# chmod 606 templates/sphone/entry/*
# chmod 606 templates/sphone/forgot/*
# chmod 606 templates/sphone/frontparts/*.tpl
# chmod 606 templates/sphone/frontparts/bloc/*
# chmod 606 templates/sphone/guide/*
# chmod 606 templates/sphone/mypage/*
# chmod 606 templates/sphone/order/*
# chmod 606 templates/sphone/products/*
# chmod 606 templates/sphone/regist/*
# chmod 606 templates/sphone/shopping/*
# cd ../downloads
# chmod 707 backup module tmp update
# chmod 606 KEN_ALL.CSV
# cd ../..
# chmod 707 data/upload/csv
# chmod 707 html
# chmod 606 data/cache/*

ここまで長いとすべて707でも良かったかな。
EC-CUBE 2.11.2インストール
やっと正常だって言われました・・・

>> ○:アクセス権限は正常です。

EC-CUBE 2.11.2インストール
画像がコピーされました。
EC-CUBE 2.11.2インストール
ECサイトの設定を入力します。
EC-CUBE 2.11.2インストール
データベースの設定を入力します。
データベースは「PostgreSQL」と「MySQL」から選択できます。次に進む前にデータベースを作成します。DBユーザはテーブルを作成する権限が必要です。

# mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 127
Server version: 5.0.77 Source distribution
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql> CREATE DATABASE jsampo_eccube_db;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL PRIVILEGES ON jsampo_eccube_db.* to *****@localhost identified by ‘*****’;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> exit

EC-CUBE 2.11.2インストール
ログインに成功すると、データベースの初期化画面が表示されます。
EC-CUBE 2.11.2インストール
テーブルや初期データを作成します。
EC-CUBE 2.11.2インストール
サイト情報が表示されましたが、上にエラーがまた出ました。

Warning: fopen(/home/fsadmin/jsampo/public/eccube/data/class/../config/config.php) [function.fopen]: failed to open stream: 許可がありません in /home/fsadmin/jsampo/public/eccube/html/install/index.php on line 989

今まで入力していた設定情報のファイルを作成できないようです。
data/configに書込み権限を付与します。

# chmod 707 /home/fsadmin/jsampo/public/eccube/data/config

EC-CUBE 2.11.2インストール
前に戻って、正常に表示されました。
※前に戻ったときは「データベースの初期化処理を行わない」にチェックします。
EC-CUBE 2.11.2インストール
ここまで3時間手探りでやってきたインストールもようやく終わりです。
EC-CUBE 2.11.2インストール
と管理画面を表示すると・・・

>> /install/index.php は、インストール完了後にファイルを削除してください。

まだ最後の作業が残っていましたね。
html/install/index.phpを削除します。

# rm -f /home/fsadmin/jsampo/public/eccube/html/install/index.php

インストール設定はdata/config/config.phpになりますので、すべての設定が終わった後でURLを変更する場合は、直接変更できます。