エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


ファイル変更だけ!ECCUBEの本番から開発環境をコピーする手順を解説

      2017/03/11

ECCUBEの本番環境をコピーして開発環境を作る

 

開発環境を作る想定イメージ

 
ECCUBEの本番環境(公開環境)のプログラムのメンテナンスをする必要がある場合や、プラグインを試そうとする場合、デザインを修正する場合など、いきなり本番環境で実施するのではなく、事前に確認をするための開発環境(テスト環境)が欲しいと思う場面は多々あると思います。
 
そのような、ECCUBEの本番環境をコピーして、開発環境を作る場合の手順を解説します。
今回は、開発環境を作ることを想定していますが、開発環境を本番環境に移す場合も基本的には同じですので、参考になると思います。
 
 
ちなみに、レンタルサーバなどで、サーバ会社から提供されていたドメインで開発を行っていたものに対して、独自ドメインを当てていよいよ公開します、という場合の対応方法については「ECCUBEを開発環境から本番ドメインに変更でエラーが・パス変更について」に記事を書いていますので、併せて参考にしてください。
 
 

開発環境を作る手順

 
環境を構築する手順は、以下の順番になります。
 
ECCUBEのデータベースをコピーする
ECCUBEのファイルをコピーする
ECCUBEの設定ファイルを変更する
 
 


 
 

ECCUBEのデータベースをコピーする

 
最初にデータベースのコピーを行います。
 
ECCUBEのデータベースの中にはデフォルトでも 130前後のテーブルがありますが、これをすべて新しい環境にコピーします。
 
phpMyAdminがあれば、データベースごと「エクスポート」でデータベース全体を取り出します。
 
20150612_web_01
 
そして、新しい空のデータベースを作成し、インポートします。
 
 
 

ECCUBEのファイルをコピーする

 
ECCUBEのプログラム、HTMLファイルをコピーします。
 
一般的には、FTPツールを使って、一度パソコンにダウンロードし、開発環境のフォルダにアップし直します。
 
Telnet、SSHでの接続が可能な場合は、コマンドでファイルをコピーしても OKです。
その場合は、下記のように、「-a」オプションでパーミッションなども含めてコピーすると確実でしょう。
「cp -ai html /dev.hoge.com」
 
 
必要なフォルダは、ドキュメントルートに入っているファイル一式、および、「data」フォルダです。
 
「data」フォルダは、ECCUBEの本体となるプログラムが入っているフォルダで、ドキュメントルートの外にある場合が多いですが、ドキュメントルートの中にある場合もあります。
 
 
 

ECCUBEの設定ファイルを変更する

 
 

dataフォルダへのパスを通す

 
まず最初に、ECCUBEのメインのプログラムが入っている「data」フォルダの場所を設定します。
 
 /define.php
の 3行目あたりの

のパスを修正します。
 
デフォルトではドキュメントルートの外に「data」がある設定になっていますので、「../data/」の場合が多いのですが、サーバの環境によってはドキュメントルートの中に入れる必要がある場合は「./data/」となります。
 
また、元ある「data」とかぶらないように、dataのフォルダ名を変更する場合などは、変更したフォルダ名を記述すれば OKです。
 
 

config.phpファイルの設定変更

 
dataフォルダへのパスを変更した次は、dataフォルダの中にある config.phpファイルの更新です。
 
更新する対象は下記ファイルです。
 /data/config/config.php
 
まずは、URLの情報設定である 3行目、4行目を変更します。
 

 
 
続いて、5行目。URLのパスを指定します。
上記のようにサブドメインで環境を構築するときは必要ありませんが、「http://www.example.com/test/」のようにサブフォルダタイプで環境を構築するときは、ドキュメントルートからのパスを指定します。
 

 
 
続いて、データベースの接続先の設定です。
7行目~12行目あたりの下記の「DB_******」のあたりを変更します。
接続するデータベースが変わるだけなら「define(‘DB_NAME’, ‘abc_databasename’);」を変更します。
 

 
 

ECCUBEはデータベースの修正なし

 
以上の設定変更で、ECCUBEの環境をコピーすることができます。
 
実際の設定内容を見て分かりますが、データベースには一切設定は保存されていません。
各設定ファイルを修正するだけで OKです。
 
WordPressはデータベースに保存されている設定情報を修正する必要があり面倒ですが、環境をコピーするだけなら ECCUBEの方が簡単ということですね。

 - PHP・Smarty・ECCUBE

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

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

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

リダイレクトループが原因で「ERR_TOO_MANY_REDIRECTS」「このページを表示できません」が出たときの対策12事例+α

リダイレクトループ、自動転送設定ループの原因の解説とその対応方法を含め事例 12例を挙げて説明。

数値文字参照コード変換ツール(HTML特殊文字コード変換ツール)

テキストを数値文字参照コード(特殊文字コード)に変換するツール。テキストを数値文字参照コードに簡単変換。数値文字参照、文字実体参照、特殊文字などの違いも解説。

パーミッション(属性)一括変更ツール・WordPress最適化済

WordPressのパーミッション(属性)を一括変更するツールを作成!ファイル、フォルダのパーミッションが一覧表示でき、ファイルを選んでパーミッションの変更が行えます。

ECCUBE2.13.3で商品規格の在庫数が無制限から変更できないバグがある

2.13.3固有のバグである商品規格の在庫数の入力エリアがアクティブにならない不具合を解消する解説です。product_class.tplの2行を修正するだけの簡単対応です。

PHPで配列の値をダブルクオーテーションで囲んでimplodeでカンマ区切りにする方法
PHPで配列の値をダブルクオーテーションで囲んでimplodeでカンマ区切りにする方法

PHPで配列の値を、preg_replace関数でクォーテーションで囲み、implode関数で「,(カンマ)」で区切ってテキスト化する方法。この方法であれば配列が空でも分岐の処理は必要なし!

PHPのスクレイピングライブラリ「PHP Simple HTML DOM Parser」の使い方
PHPのスクレイピングライブラリ「PHP Simple HTML DOM Parser」の使い方

PHPのスクレイピングライブラリ「PHP Simple HTML DOM Parser」の使い方を解説。要素を取得する方法、そこから属性を取得する方法を解説。また、マニュアルにはない注意点なども解説。

include、requireのパス指定をdirname(__FILE__)、__DIR__と書く理由

include、requireのパスの指定を dirname(__FILE__)、__DIR__で記述する理由に付いて解説。相対パス、絶対パスを直書き、パスを書かない場合は何が問題かを説明。

cURLを利用する際の注意点「&」があるURLは「"」で囲む
cURLを利用する際の注意点「&」があるURLは「」で囲む

cURLでURLはダブルクォーテーションで囲む。LinuxでもWindowsでもコマンドでは「&」は意味を持つ文字のためエラー原因になる。クォーテーションは常につけておく方が無難。

AdminerはphpMyAdmin代替のデータベース管理ツール

AdminerはphpMyAdminとほぼ同機能のデータベース管理ツール。PHP 1ファイルのため設置が非常に簡単で軽快に動作し、phpMyAdminの置き換えで使うのも問題なし。

PHPパーミッション変更のchmod関数・モードを変数で指定する方法

パーミッション変更関数であるchmod関数の第二引数、ファイルモードの指定に変数を使う場合は8進数に変換するoctdec関数を使って変換します。