EC-CUBE を xampp にインストールする(覚書)

(結論)

表面的には上手くいったように見えます。




(環境)

EC-CUBE 2.2.0a
OS WindowsXP+xampp
DBサーバ MySQL 5.0.51a
※Winでtar.gzファイルを解凍後、

eccube-2.1.2a直下のeccube-2.1.2aフォルダ(同名)のみを
xamppのドキュメントルートに移動させ、


eccube-2.1.2a直下のeccube-2.1.2aフォルダ(同名)と同階層にある「data」フォルダは捨て置いた。


解凍

トップフォルダeccube-2.1.2a → data (棄却)
トップフォルダeccube-2.1.2a → eccube-2.1.2a (同名フォルダ)(xamppへ移動)

xamppへ移動後フォルダ名を変更。ecとした。




・・これが間違いのもとのひとつだった








インストール作業開始




(phpmyadmin)

mysqlec-cube用データベースを作成する。


もともと、
MySQL の文字セット: UTF-8 Unicode (utf8)
mysqlの接続照合順序」をutf8-unicode-ci
・・と設定してあり、これは今更変更しない。


新規データベースの作成で、
「データベースの接続照合順序」をutf8-general-ciに設定。
例えばこうすればxoopsは文字化けしない。
(それは全然関係ないかw)







(ec-cube)

ドキュメントルートに解凍済みのec-cubeのフォルダを移動させて、
ブラウザでec-cubeのhtmlフォルダにアクセス


インストール画面が出て、開始させると正常に推移。
評判と違い、やけに好調だ。
たまたまphp.iniの設定が全部okなのか?だったら問題がないけど・・
(だいぶいじっている)


店名 好きな名前
管理者メールアドレス メールアドレス
管理者ID    好きな名前
管理者パスワード パスワード
htmlパス C:\xampp\htdocs\www\ec\html/
URL(通常) http://localhost/www/ec/html/
URL(セキュア) http://localhost/www/ec/html/
共通ドメイン (※通常URLとセキュアURLでサブドメインが異なる場合に指定します。)指定なし


と入れて、
で、次ページへ。


DBの種類 mysql
DBサーバ localhost
ポート (空欄)
DB名 ec
DBユーザ root
DBパスワード (空欄)


※DBユーザ・DBパスワードを空欄でOKすると、入力せよ、と出るので、






(phpmyadmin)

ec-cubeを離れて、
phpmyadminのデータベースecのページを開いて、
上のメニューの右端の方、特権タブを開く。

すると、当DBのユーザーの一覧表があるので、
localhost rootの行の「操作」をクリックしてページ変遷。
パスワードを変更するの欄で、
新パスワードを入力する。
その下はデフォのmysql4.1+のままでよし。
で、実行するをクリック。


実行したsql
SET PASSWORD FOR 'root'@'localhost' = PASSWORD( '********' )


と上に出るので、これでOK。











(ec-cube)

で、ec-cubeに帰る。
で、もう一度入力し直し。


DBの種類 mysql
DBサーバ localhost
ポート (空欄)
DB名 ec
DBユーザ root
DBパスワード パスワード
で、OKをクリック


これで次の画面へ進む



データベースの初期化を行わないにチェックを入れて・・・
また次へ進む。
(これが間違いだった)


EC CUBE インストールが完了しました。。。と出た。


管理画面にログインできます。
先ほど登録したID、パスワードを用いてログインしてください。
・・ということなので、


なので、ログインする。と、エラーmsg。









(phpmyadmin)

あれれ?ということで、今度は、
ec-cubeを離れて、
phpmyadiminを開こうとすると、
今度はこれが開かなくなっている。
で、ここに出てくるphpmyadminの指定の通りに・・



c:\xampp\phpmyadmin\config.inc.php
というphpファイルをエディターで開く。
で、



/* Authentication type and info */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['extension'] = 'mysql';



となっているところの・・・3行目・・
$cfg['Servers'][$i]['password'] = '';
の行に、


パスワードを記入して保存。
SHIFT_JISのまま(エディター上では)だけどそのまま)



で、もう一度phpmyadminを開こうとする。



すると、phpmyadminが開いた!



(注)
・・・※※※今まで動いていたxoops、MT、その他が
もしかして動かなくなってしまってるかもしれないと不安。
このふたつはパスワード設定がないから。

今までは個別データベースでもユーザーパスワードを設定した
事はなかったので。後で要確認。
・・と思いながら・・・



そのままmysqlを開いてecデータベースを開く。
テーブルがインストールされなかったのか?
見てみると・・
ecデータベースを開くと、テーブルが7つあるが・・・










(ec-cube)

再度ec-cubeへログインしようとすると・・またもや・・・
同じエラーmsgが出てしまう。




「システムエラーが発生しました。
大変お手数ですが、サイト管理者までご連絡ください。」
と出る。



・・・うーん、何故か、データベース系で詰まっているような気が・・
これというのは、つまりphpのセーフモードを有効にしているから、
インストール時にDBを全部インストール出来なかった可能性がある。
今回データベースの作成された総テーブル数は7だったが実は?









(phpmyadmin)

と思ってphp.infoをxamppのlocalhostコントロールパネルで見ると、
セーフモードはオフw
じゃあ、駄目か。分からない。全部やり直し。
ecデータベースからテーブルを全削除。










(ec-cube)

xamppのドキュメントルートからec-cubeデータを削除。
で、アンインストールはとりあえず全部終わり。


結局つらつらと思うに、
「データベースの初期化を行わない」にチェックを入れていたので、
DB関係がスタックしているのではないかと思ったので、即実行。
DBの初期化を行ってもらうことにする。


もう一度最初から同じ手順で、
そこだけ変えて、やり直し。
・・・すると、



できた!
その経過を以下メモ。

                                                                                                    • -

(これが間違いのもとだった!)
データベースの初期化を行わない→チェックを入れない。
つまり、DBの初期化をする!

                                                                                                    • -


○:追加テーブル(dtb_session)の作成に成功しました。
○:追加テーブル(dtb_module)の作成に成功しました。
○:追加テーブル(dtb_campaign_order)の作成に成功しました。
○:追加テーブル(dtb_mobile_kara_mail)の作成に成功しました。
○:追加テーブル(dtb_mobile_ext_session_id)の作成に成功しました。
○:追加テーブル(dtb_site_control)の作成に成功しました。
○:追加テーブル(dtb_trackback)の作成に成功しました。
○:テーブルの作成に成功しました。
○:初期データの作成に成功しました。
○:カラムコメントの書込みに成功しました。
○:テーブルコメントの書込みに成功しました。



■サイト情報について
EC-CUBEのシステム向上及び、デバッグのため以下の情報のご提供をお願いいたします。

はい(推奨)を既選択のまま。
(注・思うにこれっていいえでも良いのでは?・・もしかしてシステム内組み込みのみでメーカー送信ではない可能性も?)





(!)
データベースの初期化を行わない→チェックを入れた・・・ということが原因だったようだ。つまり、初期化は必要という結果。

というか、そうとしか言えない。

                                                                                    • -
                                                                                    • -

ということで、install完了!
ルートドキュメントのec-cubeフォルダ/htmlフォルダ/install/index.phpを削除(セキュリティ目的)。
以上インストールは全部終了!

                                                                                    • -
                                                                                    • -

ところが・・・




(ec-cube)

で、管理画面がきれいに出ているのを表面的に見て、一度は、出来た!と思ったが・・
トップページを開いて見ると、トップページの書き出しが行われず、警告がずらっと!
並んでいた・・・



Warning: require_once(C:\xampp\htdocs\www\ec\html/
../data/class_extends/page_extends/frontparts/bloc
/LC_Page_FrontParts_Bloc_Category_Ex.php) [function.require-once]: failed to open stream: No such file or directory in C:\xampp\htdocs\www\ec\html\frontparts\bloc\category.php on line 25



Fatal error: require_once() [function.require]: Failed opening required 'C:\xampp\htdocs\www\ec\html/../data/class_extends
/page_extends/frontparts/bloc
/LC_Page_FrontParts_Bloc_Category_Ex.php' (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\www\ec\html\frontparts\bloc\category.php
on line 25



警告!致命的なエラー(fatal error)で、

1度だけ実行する筈のLC_Page_FrontParts_Bloc_Category_Ex.phpというファイルがありません。


本来ならC:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/frontparts/bloc/
にある筈でした。


そのファイルを取り込む指示は、html/frontparts/bloc/kategory.phpの25行目にあるのです・・・実行できず致命的です。






で、winのフォルダ内検索で探すとそんなファイルは存在しないようだ。
ぐぐるとこちらに
同じ質問があるが、これに対する返答はない。


なので、フォルダを開いて肉眼で確認すると、
トップフォルダ/data/class_extends/page_extends/frontparts/bloc/

LC_Page_FrontParts_Bloc_Category_Ex.php
はない。


そのかわり、
LC_Page_FrontParts_Bloc_Best5_Ex.php
LC_Page_FrontParts_Bloc_Cart_Ex.php
LC_Page_FrontParts_Bloc_Login_Ex.php
LC_Page_FrontParts_Bloc_News_Ex.php
などがあって、整然と並んでいる。
ごちゃごちゃしてない。


トップフォルダ/html/frontparts/bloc/kategory.php
をエディターで開いてみると・・・


// {{{ requires
require_once
(CLASS_EX_PATH . "page_extends/frontparts/bloc/
LC_Page_FrontParts_Bloc_Category_Ex.php");


・・・と書いてある。
これはもしかすると・・・
先に管理画面に入力をすると、自動生成されるのかもしれない・・
(ほんとか?)


なにしろxamppってフルパーミッションのはず・・そちらからはまさか原因は無い筈・・



                                                                                                            • -


(ec-cube)


ということで、このまま管理画面の一般管理者ユーザーによる登録作業をおもむろに始めてみる。


初めてみるEC-CUBEの管理画面なのでまあいいか。


とりあえず管理画面に必要事項を記入しようとして、ページをめくっていると、
基本情報の郵便番号DB登録だけど、ここをクリックしただけで、DB関係なんだろうか?、
自動インストールが始まった。で、それは無事完了。ふうふう・・



てな調子で登録画面を見ていくと管理画面随所で同様の警告が出まくるw


・・どうしたものか・・


やむなく、初めてec-cubeマニュアルを見ます。
マニュアルはこちら


むろん最初に見ろという説もあります。


このマニュアルの1頁目、最初のページだけど、
それはこちらです


マニュアルによれば、既にインストール直後に変な警告はなくて、
綺麗に初期画面が表示されている。
つまり警告はインストールの問題であって、管理画面は関係ない・・という事になる。


ちなみに同マニュアル内のインストール方法の記述はこちら
しかしこれは今は関係ないが。



なので、1頁見ただけで早くもマニュアルは閉じるw



                                                                                                            • -

(ec-cube)



ec-cube開発コミュニティの検索に、
LC_Page_FrontParts_Bloc_Category_Ex.php
と入力して検索。



すると、このページが全く同様の症状を解決していた。



つまり、win上でec-cubeのtar.gzファイルをさっさと解凍して組み込んだ事が原因だった。
それでフォルダ・ファイル・の構成が変わってしまった。
対処法は、解凍後のファイルの段階において、
システムが要求するファイルがあるから、
それをコピー等して、インストール後のファイル構成の中に
追加すると解決するらしい。


で、やってみた。


もう一度tar.gzファイルを解凍して、解凍済データを準備する。
(さっき解凍したものは既にxamppに組み込んでインストール処理済)



まず、トップページのwarningのこれ。
data/class_extends/page_extends/frontparts/bloc
/LC_Page_FrontParts_Bloc_Category_Ex.php




すると、解凍済みのeccube-2.1.2aフォルダの中には、
eccube-2.1.2aフォルダ、と、dataフォルダがあって、
この2階層目のeccube-2.1.2aフォルダをrenameで、同階層のdataフォルダは使用しなかったが、
(それも原因?)
この階層のdataフォルダ以下のシステム指定の場所にそれらはあった。
(結局インストールの際に外しているから問題が?、それはまた今度検討しましょう)


で、
LC_Page_FrontParts_Bloc_Category_Ex.php
をシステム指定の位置にコピペ。



トップページをブラウザーで開く。
殆どのトップページデザインが始めて現れる。
が、右カラムにいくつか警告が並んでしまっている。


                                                                                                            • -


(ec-cube)



Warning: require_once(C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/frontparts/bloc
/LC_Page_FrontParts_Bloc_SearchProducts_Ex.php) [function.require-once]: failed to open stream:
No such file or directory in C:\xampp\htdocs\www\ec\html\frontparts\bloc\search_products.php on line 24


Fatal error: require_once() [function.require]: Failed opening required 'C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/frontparts/bloc
/LC_Page_FrontParts_Bloc_SearchProducts_Ex.php' (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\www\ec\html\frontparts\bloc\search_products.php on line 24




LC_Page_FrontParts_Bloc_SearchProducts_Ex.php
も、同じ状況のよう。
これも上記と同じ場所なので、同じ要領で、
xamppの中のec-cubeフォルダの指定場所へこぴぺー。


で、トップページをブラウザーでリロードすると、
・・・トップページが正常表示出来た。



                                                                                                              • -


(ec-cube)


そう言えば・・さっき管理画面を見ていた時にも・・・
何箇所か同じような警告文が出ていたなあ・・



で、もともとコピペ元フォルダには3つのファイルがあって、
その内2ファイルを上記でコピペしてxampp内に貼り付けた。
残りはひとつ、・・残っている。



LC_Page_FrontParts_Bloc_Calendar_Ex.php
であるが・・
確認もせず、これもコピペしてしまおう。
なに、不要なら、他のphpファイルが読み込まなければいいかと、
・・いう訳である。


安直だけど、はい、こぴぺ。
問題があったら、後で考えよう・・・。




                                                                                                        • -

(ec-cube)


で、今度は管理画面を最初から1pずつ、そのページのボタンのみを全ボタン上から順番に押して調べる。






商品管理の「商品登録csv」を押すと、


Warning: require_once(C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/admin/products
/LC_Page_Admin_Products_UploadCSV_Ex.php) [function.require-once]: failed to open stream:
No such file or directory in C:\xampp\htdocs\www\ec\html\admin\products\upload_csv.php on line 26


Fatal error: require_once() [function.require]: Failed opening required 'C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/admin/products
/LC_Page_Admin_Products_UploadCSV_Ex.php' (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\www\ec\html\admin\products\upload_csv.php on line 26



・・調べてみると、このファイルは正位置にあった。
但し、拡張子が.phになっている。
で、拡張子を.phpに直せば正常表示。


                                                                                                          • -


(ec-cube)


・・引き続き、全ボタン点検。


商品管理の「カテゴリ登録csv」も、


Warning: require_once(C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/admin/products
/LC_Page_Admin_Products_UploadCSVCategory_Ex.php) [function.require-once]: failed to open stream:
No such file or directory in C:\xampp\htdocs\www\ec\html\admin\products\upload_csv_category.php on line 26


Fatal error: require_once() [function.require]: Failed opening required 'C:\xampp\htdocs\www\ec\html/../data/class_extends
/page_extends/admin/products
/LC_Page_Admin_Products_UploadCSVCategory_Ex.php' (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\www\ec\html\admin\products\upload_csv_category.php on line 26


・・・このファイルは正位置にない。
で、当然解凍のみの段階の後追いで準備した被指定フォルダにはあったので、
こぴぺ。で、正常表示。


                                                                                                            • -

(ec-cube)


・・引き続き、全ボタン点検。


商品管理の「商品並べ替え」も、


Warning: require_once(C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/admin/products
/LC_Page_Admin_Products_ProductRank_Ex.php) [function.require-once]: failed to open stream:
No such file or directory in C:\xampp\htdocs\www\ec\html\admin\products\product_rank.php on line 26


Fatal error: require_once() [function.require]: Failed opening required 'C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/admin/products
/LC_Page_Admin_Products_ProductRank_Ex.php' (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\www\ec\html\admin\products\product_rank.php on line 26



・・・このファイルは正位置にない。
で、当然解凍のみの段階の後追いで準備した被指定フォルダにはあったので、
こぴぺ。で、正常表示。


                                                                                                        • -

(ec-cube)


・・引き続き、全ボタン点検。


商品管理の「トラックバック管理」も、


Warning: require_once(C:\xampp\htdocs\www\ec\html\admin/..
/../data/class_extends/page_extends/admin/products
/LC_Page_Admin_Products_Trackback_Ex.php) [function.require-once]: failed to open stream:
No such file or directory in C:\xampp\htdocs\www\ec\html\admin\products\trackback.php on line 26


Fatal error: require_once() [function.require]: Failed opening required 'C:\xampp\htdocs\www\ec\html\admin/../..
/data/class_extends/page_extends/admin/products
/LC_Page_Admin_Products_Trackback_Ex.php' (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\www\ec\html\admin\products\trackback.php on line 26


・・このファイルは正位置にあった。
しかしこれも、拡張子が.phになっている。
で、拡張子を.phpに直せば正常表示。


                                                                                                        • -

(ec-cube)


で、要するにrequireで呼び出されなければそれでいいんだから、
この二つの比較対照している
フォルダの中身を全部コピペ状態にすれば良いと思うので、
(ハッキリいいかげんである)
(問題が起きたら考えましょう)


全部をコピペ掛けて、上書きはしなければ、
不足分のこぴぺぜんぶおわり
(まずいだろw)
・・でも、こぴぺ。


・・・結果.phという拡張子も残っていない。
じゃあ、これでいい。

                                                                                                            • -


(ec-cube)


で、さらに管理画面各ページのボタンを順に押してみる


コンテンツ管理の「オススメ管理」


Warning: require_once(C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/admin/contents
/LC_Page_Admin_Contents_Recommend_Ex.php) [function.require-once]: failed to open stream:
No such file or directory in C:\xampp\htdocs\www\ec\html\admin\contents\recommend.php on line 26


Fatal error: require_once() [function.require]: Failed opening required 'C:\xampp\htdocs\www\ec\html/../data/class_extends
/page_extends/admin/contents
/LC_Page_Admin_Contents_Recommend_Ex.php' (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\www\ec\html\admin\contents\recommend.php on line 26


コンテンツ管理の「ファイル管理」


Warning: require_once(C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/admin/contents
/LC_Page_Admin_Contents_FileManager_Ex.php) [function.require-once]: failed to open stream:
No such file or directory in C:\xampp\htdocs\www\ec\html\admin\contents\file_manager.php on line 26


Fatal error: require_once() [function.require]: Failed opening required 'C:\xampp\htdocs\www\ec\html/..
/data/class_extends/page_extends/admin/contents
/LC_Page_Admin_Contents_FileManager_Ex.php' (include_path='.;C:\xampp\php\pear\') in C:\xampp\htdocs\www\ec\html\admin\contents\file_manager.php on line 26




「オススメ管理」


解凍段階では、
eccube-2.1.2a/eccube-2.1.2a/data/class_extends/page_extends
/admin/contents/LC_Page_Admin_Contents_Recommend_Ex.php
にあった。
で、インストール作業後には同ポジションから消えていたので、これもxampp内ec-cubeトップフォルダの
/data/class_extends/page_extends/admin/contents
/LC_Page_Admin_Contents_Recommend_Ex.php
として、こぴぺ。
で、ついでに全ファイル上書きしないでこぴぺ。


「ファイル管理」


contentsフォルダ同士で、全部こぴぺ。
ひとつ.ph拡張子があったので、.phpに修正。
(いいのか、それで!)



・・・解凍の段階で拡張子が壊れているなあ・・・やばそ・・


                                                                                                        • -


で、他におかしい様子もパッと見ない。
これでインストールは成功!
(?)
(?)





様子は今後見ます。