XAMMPを利用してEC-CUBEを2環境分用意した
前回は、Xserverで稼働中のデータをそのまま持ってくることでXAMMP上で動かそうとしていましたが、ファイルロード周りがうまくいかず、断念しました。そうなったら、XAMMPでまずEC-CUBEを構築して、その上に稼働中のデータを持ってくることで開発環境を作ろうと考えました。
どうせゼロベースの構築もしたいと思うので、同時に特殊なプラグインやテーマのない環境も置きたくなるので、一挙に2環境作ることにしました。
作業にあたって、下記サイト様を参考にさせていただきました。
Windows環境でXAMPPを使用したインストール方法 – < for EC-CUBE 4 Developers
AMPP を複数インストールする方法 – LAZE SOFTWARE
2環境と書きましたが、厳密には3環境分用意しました。
- Xserverで稼働中の本番機を模倣する開発環境
- ゼロベースで作り始めるEC-CUBE開発環境
- 上記二つをインストール作業から入れるようにする環境(ひな形)
この三つです。
XAMMPはポータブル版かつ、ZIPファイルバージョンを使用
Xserver上で稼働しているEC-CUBEは下記の環境のため、それに合わせて必要ファイルを用意します。
XAMMPはポータブル版のZIPを利用します。ポータブル版は、外付けメディアなどに入れて使えるからポータブル版というのではなく、利用されやすいコンポーネントを厳選した軽量版ということだけみたいです。なので、インストーラー版でインストールすると、後々スタートメニューなどが面倒な話になるので、ZIPファイルバージョンをダウンロードしておきます。
EC-Cube | 4.2.2 |
DB | MySQL 10.5.13-MariaDB-log |
php | php-7.4.33-2 |
EC-CUBE本体 Ver.4.23
https://www.ec-cube.net/download/archive/
XAMPP Ver.7.4.33
https://www.apachefriends.org/jp/index.html
ひな形環境作成
私が実施したのは3環境分ということですが、ほとんどは公式が公開している手順を利用して構築します。まずはひな形を用意するので、XAMMPのZIPを解凍したら、任意のディレクトリに設置します。
D:\xamppOrg
としました。
その後、EC-CUBEを動かすために必要な設定ファイルを編集します。下記ファイルが対象です。D:\xamppOrg\php\php.ini
D:\xamppOrg\apache\conf\extra\httpd-xampp.conf
最後に、EC-CUBEを解凍して、htdocsフォルダに入れておきます。URLに関係がありますので、フォルダ名は気を付けたほうがいいかもしれません。何もなければEC-CUBEフォルダのままでもいいでしょう。
環境複製
上記で作成したxamppOrgをフォルダごと2つにコピーします。ファイル数が多いのと、細かいので使える方はrobocopyコマンドなんかでコピーすると早いと思います。
D:\xamppDev
D:\xamppNew
この二つを作った後、D:\xamppOrgのひな形フォルダは眠りについてもらいます。ZIPに圧縮して、その辺に置いておきます。
XAMPPセットアップ
XAMMPは、インストールされたフォルダがどこであるかをきっちりに認識させておかないと、Apache関連のディレクトリ指定の設定回りでこけます。XAMPPフォルダ直下にsetup_xampp.batというファイルがあるので、それを実行することでインストールパスに応じた設定ファイル書き換えを実行してくれます。
今回は、2環境ともオリジナルの「XAMPP」というディレクトリ名から変更を加えていますので、忘れずに実行します。
DB作成
XAMPPは2環境とも同時には実行できませんので、1環境ずつ作業します。XAMPPフォルダの直下にある「xampp-control.exe」をショートカットなどでデスクトップに作ったら、それぞれの環境に応じた名前に変えておくといいでしょう。
あとは公式マニュアルと同じくDBを作成しておきます。
EC-CUBEインストール
こちらも公式マニュアルと同じく、localhost/<EC-CUBEを設置したフォルダ名>にブラウザでアクセスして、指示に従ってインストールします。
XAMPPを作業対象に合わせて起動オンオフしながら運用
運用対処が必要になりますが、以上でEC-CUBEを無事に2環境作ることができました。
それぞれ別のコンセプトで作っていくため、今回はこのような方法になっています。ただ、XAMPPもいろいろな起動モジュールが同梱されているので、バッチ組むなりで切り替えを簡単にできると思います。
私は能動的にどちらの環境であるかを知る必要があるため、利用後はサービスを毎回止めることにしました。
ディスカッション
コメント一覧
まだ、コメントがありません