ECCUBEを開発環境から本番ドメインに変更でエラーが・パス変更について
2015/06/12
ECCUBE・公開しようとドメインを当てたらエラーが発生!
ECCUBEのエラーが出る状況と原因の概要解説
レンタルサーバを使って ECCUBEを構築し、本番公開する際にドメインを当てると下記のようなエラーが出て動かなくなってしまった、という場合の対処方法です。
上記の画像の値などは一部適当に加工してありますが、
「▼▼▼ デバッグ情報ここから ▼▼▼」
「▲▲▲ デバッグ情報ここまで ▲▲▲」
「システムエラーが発生しました。
大変お手数ですが、サイト管理者までご連絡ください。」
といった感じでエラーが表示されます。
原因は、共有サーバで設定していた場合のパスと、ドメインを当てた場合のパスの見え方が違ってくるためです。
より具体的な話としては、
開発中:レンタルサーバの割り当てドメインでの URL
http://s-giken.sakura.ne.jp/s-giken/html/
公開時:ドメインでの URL
http://s-giken.ne.jp/
開発中は、「開発中」の URLで開発をしていて、公開をしようとしてドメインをあてて「公開時」の URLにしたらエラーが出るようになった、というような状況です。
ドメインを設定する前に、「hosts」で設定した場合も同じ状況になります。
上記の URLを見てもらっても分かる通り、「開発中」の URLには「s-giken/html/」の部分が余計についています。
これがエラーの原因です。
ECCUBEのエラーの解消方法
ファイルが置いてあるパスが変更になりますので、ECCUBE内でこのパスが設定してある個所を変更する必要があります。
ですが、パスを変更すると ECCUBE自体が動かなくなることもありまして、管理画面から変更することはできません。
修正作業は FTPを使ってファイルの変更をすることになります。
【変更対象ファイル】
/data/config/config.php
【変更対応箇所】
1 2 3 4 5 6 7 8 9 10 11 |
<?php define('ECCUBE_INSTALL', 'ON'); // define('HTTP_URL', 'http://s-giken.sakura.ne.jp/s-giken/html/'); // define('HTTPS_URL', 'http://s-giken.sakura.ne.jp/s-giken/html/'); define('HTTP_URL', 'http://s-giken.ne.jp/'); define('HTTPS_URL', 'http://s-giken.ne.jp/'); // define('ROOT_URLPATH', '/s-giken/html/'); define('ROOT_URLPATH', '/'); : : : |
変更点は、上記を見てもらうと分かると思いますが、下記の様に修正を行います。
1 2 3 4 5 6 7 8 |
define('HTTP_URL', 'http://s-giken.sakura.ne.jp/s-giken/html/'); ↓ define('HTTP_URL', 'http://s-giken.ne.jp/'); define('ROOT_URLPATH', '/s-giken/html/'); ↓ define('ROOT_URLPATH', '/'); |
ECCUBEのエラーを解消させた後
パスの設定を変更すると、もともとアクセスしていた URLではアクセスできなくなります。
——————-
Not Found
The requested URL /s-giken/html/ was not found on this server.
——————-
アクセスすると上記のような 404エラーのページが表示されるでしょう。
これは、パスが変わるためにいずれかを選択する必要があるわけですので、致し方がないことかと思います。
ECCUBEの環境をコピーする方法
今回の記事では、ドメインを当てて本番公開をする方法の解説でしたが、公開後、プログラムをメンテナンスする際などに必要になる開発環境の構築方法、ECCUBEの環境をコピーする方法については「ファイル変更だけ!ECCUBEの本番から開発環境をコピーする手順を解説」に記事を書きましたので、あわせて確認してください。
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
SEO対策用タイトル、ディスクリプションの文字数カウントツール
SEO対策に使える文字数カウントツールで文字数の条件の説明も行っています。
-
-
ECCUBEの商品一覧ページのSEO対策!rel=”next” rel=”prev”を設定
Googleは関連あるページはその旨明示するよう求めています。ECCUBEの商品一覧ページでその求めに応じるための「rel=”next”」「rel=”prev”」について解説します。
-
-
ECCUBEの新規追加ページがInternal Server Error・Not Foundに
ECCUBEで新規追加したページがInternal Server Errorに!原因はファイルのパーミッションの場合が多くその対処方法とプログラムの修正ポイントを解説。Not Foundも解説。
-
-
AdminerはphpMyAdmin代替のデータベース管理ツール
AdminerはphpMyAdminとほぼ同機能のデータベース管理ツール。PHP 1ファイルのため設置が非常に簡単で軽快に動作し、phpMyAdminの置き換えで使うのも問題なし。
-
-
ECCUBEでカード決済NGの受注情報をマイページ購入履歴に表示しない方法解説
ECCUBEでカード決済に失敗しても購入履歴一覧に注文情報(受注情報)が表示される問題への対処方法を解説。受注情報レコードの作成の流れとステイタスについても解説。
-
-
ECCUBEの管理画面のSSL設定をインストール後に変更する方法
ECCUBEをインストールした後から管理画面のSSL設定を変更する方法を解説します。config.phpファイルのHTTPS_URLとADMIN_FORCE_SSLの値を変更すればOK。
-
-
乱数発生器(パスワード生成サービス)がバージョンアップで高速化!
乱数やパスワードを生成する乱数発生器を高速化!重複しない10桁、20桁の文字列を10万件、20万件と生成することも可能!イベントのキャンペーンのシリアルコードなどにも利用可能!
-
-
PHPで APIにアクセスする際などに使用する cURLのサンプルプログラム
PHPのcURLを使用して各種APIにアクセスするサンプルプログラムを作成し、その処理を解説。カオナビAPIのみならず、他の多くのAPIにアクセスする際にも使用できる。
-
-
GMOペイメントゲートウェイのjava.io.IOExceptionのエラー
ECCUBEの決済でGMOペイメントゲートウェイのモジュールを使ってテスト決済を行った場合の不具合、java.io.IOExceptionと言うエラーの原因と対策方法の解説です。
-
-
ECCUBEの注文完了画面注文番号と商品情報を編集するCRITEO(クリテオ)タグを編集
ECCUBEの注文完了画面にクリテオのタグを編集する方法を紹介。標準機能では完了画面に注文IDや購入商品の情報を渡さないため改修が必要です。