XAMPP lite に EC-CUBE2.11.1をインストールして持ち運ぼう
作業内容
- EC-CUBEのダウンロード
- データベースの作成
- EC-CUBEのインストール
- EC-CUBE2.4.4との違いを少し確認
EC-CUBE2.11.1をダウンロードする
EC-CUBE公式サイトから正式版(Ver2.11.1)をダウンロードする
ダウンロードした「eccube-2.11.1.zip」を解凍
解凍した「eccube-2.11.1」フォルダ内の「data」フォルダ丸ごとと「html」フォルダ内のすべてのファイルを
XAMPP liteの「htdocs」フォルダに移動(コピー)します
今回はec-cube用に「eccube」フォルダを用意し その中にコピーすることにしました
ファイルをコピーしている間に XAMPPを起動
「eccube-2.11.1」の「data」と「html」フォルダのコピーが完了
ブラウザから「http://localhost/eccube/install/」にアクセス
あっ エラーメッセージが出た
先ほど「data」と「html」内のファイルの階層を変えたのが原因のようです
「html」フォルダに入っていた「define.php」をちょこっと編集
3行目の
define("HTML2DATA_DIR", "../data/");
を
define("HTML2DATA_DIR", "./data/");
に変更
再度「http://localhost/eccube/install/」アクセスしました
インストール開始画面が表示されましたね
「次へ進む」をクリック
「アクセス権限は正常です。」と表示されたので「次へ進む」をクリック
必要なファイルのコピーが開始されます。
一瞬なので 終わったかどうかわかりにくいですが「次へ進む」をクリック
「ECサイト」「管理機能の設定」「WEBサーバの設定」の設定をします
「ECサイト」と「WEBサーバの設定」は バージョン2.4を一緒ですが
「管理機能の設定」が追加されていました
「管理画面へのアクセス」をIPアドレスで設定できるみたいです
「ECサイトの設定」
- 店名
- メールアドレス
- ログインID
- パスワード
を設定します
「ログインID」と「パスワード」は管理画面に入るときに必要ですので メモしておいてください
「管理機能の設定」
- ディレクトリ
- SSL制限
- IP制限
を設定します
とりあえず 何も設定せずにこのままでよさそうです
詳しいことがわかったら ここに記載しようと思います
「WEBサーバの設定」
- URL(通常)
- URL(セキュア)
- 共通ドメイン
を設定します
ここも 今回はこのままの設定にしておきます
「次へ進む」をクリック
続いて データベースの設定です
「PostgreSQL」か「MySQL」のどちらかを選択できます
XAMPP(lite)の場合「PostgreSQL」が使えないので「MySQL」を選択します
あっ EC-CUBE用のデータベース作ってなかった…
EC-CUBE用のデータベースの作成
「http://localhost/phpmyadmin/」にアクセス
適当に「データベース名」を付けて「作成」をクリック
データベースの完成
続いて このデータベースにアクセスできる「データベースユーザ名」と「データベースパスワード」を作成しておきます
※すべてのデータベースにアクセス権限のある「データベースユーザ名」と「データベースパスワード」が
すでにある場合は それを使っても構いません
先ほど作ったデータベースが選択された状態で 右上の「特権」をクリック
「新しいユーザを追加する」をクリックします
※すでにデータベースにアクセスできる「データベースユーザ名」と「データベースパスワード」はありますが
今回は専用のユーザを用意しようと思います
新しいユーザを追加する
ログイン情報
「ユーザ名」と「パスワード」を入力します
EC-CUBEのインストールに使うのでメモしておきます
ユーザ専用データベース
さっき作ったデータベースに権限を与えたいので「Grant all privileges on database “データベース名”」を選択し
右下の「実行」をクリック
新しいユーザを追加するついでに専用データベースを作成する事もできるので作業が1回で済みます
その場合は、「データベースユーザ名」と「データベース名」が一緒になります
これでEC-CUBE用の
「データベース名」
「データベースユーザ名」
「データベースパスワード」
が作成できました
先程のインストール作業に戻ります
データベースの設定
「DBの種類」「DBサーバ」「ポート」「DB名」「DBユーザ」「DBパスワード」を入力していきます
- 「DBの種類」→「MySQL」
- 「DBサーバ」→「localhost」
- 「ポート」→空欄
- 「DB名」→「データベース名」
- 「DBユーザ」→「データベースユーザ名」
- 「DBパスワード」→「データベースパスワード」
さっき設定したデータベースを初期化し テーブル等を作成するか確認されます
「データベースの初期化処理を行わない」にチェックせずに「次へ進む」をクリック
※データベースを引越ししたりして すでにテーブル等がある場合は
「データベースの初期化処理を行わない」にチェックをして「次へ進む」をクリックしてください
データベースの初期化完了
データベースにテーブルが作成されたようなので「phpMyAdmin」から確認してみました
さっきは空っぽだったデータベースに119個のテーブルが作成されています
テーブルの接頭辞は「dtb_」「mtb_」ですね
「次へ進む」をクリック
サイト情報について
「次へ進む」をクリック
EC CUBE インストールが完了しました。
「管理画面へログインする」をクリック
インストール後の「/install/index.php」の削除
「>> /install/index.php は、インストール完了後にファイルを削除してください。」と表示されているので
必ずファイルを消すようにしてください
再度「http://localhost/eccube/admin/」にアクセスすると
「>> /install/index.php は、インストール完了後にファイルを削除してください。」の文字が消えてました
最後に管理画面を確認
あれっ ユーザー名が「???」になってる
もしかして…
一部文字化けしてますねー
バージョン2.4.4と一緒で「/data/class/SC_DbConn.php」をいじればいいのかなーっと思ったら
「/data/class/SC_DbConn.php」がない…
EC-CUBEのコミュニティサイトで同じような症状のコメントを発見
「質問 > その他 > 2.11.1で文字化けが直らない」
もしやと思い データベース内のテーブルの「照合順序」を確認
なぜか「latin1_swedish_ci」になってました
コレが原因なのかなー
ってことですべて(テーブル119個)の「照合順序」を「utf8_general_ci」に変えてみようと思います
いや「utf8_unicode_ci」の方がいいのかなぁ
「バグ報告 > その他 > 2.11.1修正ファイル デグレっているようです」も参考に
色々試してみましたが ダメでした
ということで 再インストール
途中 こんなメッセージが出ました
かまわずデータベースを初期化してインストールです
データベースの初期化完了
おーー ちゃんと「utf8_unicode_ci」になってます!!
管理画面もサンプルサイトも文字化け解消!!
結局の原因はなんだったのだろう??
「照合順序」が「utf8_general_ci」だったのがいけなかったのかな?
初めから「utf8_unicode_ci」なら大丈夫だったのかも
いや たぶん「latin1_swedish_ci」だったっぽい
んーーーどうやら インストールしたときにデータベースの照合順序を「utf8_general_ci」や「utf8_unicode_ci」にしておいても
「latin1_swedish_ci」になってしまうようなので
インストールして一度テーブルを作成してから照合順序を変えてインストールし直すと楽かなー
※【2011/8/29追記】データベース作成時の照合順序を正しく指定できてなかっただけのようでした ただの勘違い 「utf8_general_ci」を指定してデータベースを用意しておけば問題ありません