EC-CUBE3をサブドメインで使う際、結構苦労したので備忘録として残しておきます。
- 【レンタルサーバー】
- さくらのレンタルサーバー スタンダード
- 【PHPバージョン】
- 5.6
- 【EC-CUBEバージョン】
- 3.0.10
1.データベースの作成
さくらのレンタルサーバー管理画面にログインすると、左カラムに[データベースの設定]という項目があるので、そこからEC-CUBE用にデータベースを新規作成します。
その際に決めたパスワードは後で必要になるので、忘れないようにメモしておくこと。
2.php.iniの編集
EC-CUBEをインストールする前に、EC-CUBEが問題なく動くように事前にphp.iniの編集を行います。
さくらのレンタルサーバー管理画面の左カラムに、[PHP設定の編集]という項目があるのでクリックしてください。
php.iniの編集画面になりますので、下記を記入して「保存」してください。
date.timezone = Asia/Tokyo
magic_quotes_gpc = Off
3.EC-CUBEのインストール
上記1、2が完了したら、次はEC-CUBEのインストールとなります。今回はさくらのレンタルサーバー管理画面からクイックインストールします。
レンタルサーバー管理画面の左カラムに[クイックインストール]という項目があるので、クリックして[EC]→[EC-CUBE]と進みます。
EC-CUBEのインストール規約と注意事項を読み、[確認]にチェック、インストール先は新規に任意のフォルダ名を入れます(ここでは「ec」というフォルダ名にします)。
[データベース]は、上記1で作ったデータベースをドロップダウンで選択し、[パスワード]に上記1で決めたパスワードを入力します。
テーブルの接頭語は任意の英数字であれば何でもOKです。
4.EC-CUBEの初期設定
上記3でインストールが完了したら、そのままEC-CUBEの初期設定に移動するボタンが出てくるので、クリックして初期設定を進めます。
まず、「ようこそ」という画面で『[推奨]APC 拡張モジュールが有効になっていません。』と表示されますが、無視してOKです。
次へ進むと「権限チェック」となりますが、よほどの事がない限り『アクセス権限は正常です。』と出るので、これもそのまま進んでOKです。
次へ進むと「サイトの設定」となり、下記の設定が必要です。
店名:任意の名前
メールアドレス:受信可能なメールアドレス
管理画面ログインID:任意の文字列(例:kanri)
管理画面パスワード:任意の文字列(例:password)
管理画面のディレクトリ名:任意の文字列(例:admin)
次へ進むと「データベースの設定」となりますので、上記1で作成したデータベースの情報を入力します。
データベースの種類:MySQL
データベースのホスト名:データベース サーバ名
ポート番号:空欄でOK
データベース名:上記1で作成したデータベース名
ユーザ名:上記1で作成したデータベース ユーザ名
パスワード:上記1で作成した接続パスワード
入力後次へ進むと、「データベースの初期化」となりますので、そのまま次へ進むをクリックします。
データベースの初期化が完了すると、EC-CUBEの管理画面にログインできるようになるので、表示確認のため、上で決めた管理画面ログインIDとパスワードを使って、一旦ログインしてみます。この時のURLは、「http://hoge.com/ec/html/admin/」となっているはずです。
管理画面にログインできたら、さくらレンタルサーバーの管理画面からファイルマネージャーに入り、「ec/html」内にある『install.php』を削除してください。
5.サブドメインの設定
今回はEC-CUBEをサブドメインで表示するので、EC-CUBEの入っているディレクトリをサブドメインの指定フォルダとして設定する必要があります。なお、ここではサブドメインを「ec.hoge.com」とします。
さくらのレンタルサーバー管理画面の左カラムにある[ドメイン設定]をクリックして[新しいドメインの追加]からサブドメインを作ります。
サブドメインの設定では、『wwwを付与せずマルチドメインとして使用する(上級者向け)』を選び、『指定フォルダ』にはEC-CUBEを入れたフォルダを入力(今回の例では「ec」)して下さい。
さくらインターネット以外の他社でドメインを取得している場合は、ドメインコントローラー側でDNSの設定が必要になります。
※DNSの設定後はサブドメインで表示するまで少し時間がかかります。
6..htaccessの削除
サブドメインで表示できるように、EC-CUBEをインストールしたディレクトリ「ec」直下にある.htaccessを削除します。.htaccessの中身は下記の通りなので、確認してから削除して下さい。
order allow,deny
deny from all
7.ファイルの移動
EC-CUBEの「ec/html」内にある下記のファイルを、ディレクトリ「ec」直下に移動します。
・index.php
・index_dev.php
・.htaccess
・robots.txt
8.ファイル内記述の変更(その1)
上記7で移動した、「index.php」および「index_dev.php」内の記述を変更します。
※index.php内
require __DIR__.'/../autoload.php';
を下記に変更
require __DIR__.'/autoload.php';
※index_dev.php内
require_once __DIR__.'/../autoload.php';
$config_dev_file = __DIR__.'/../app/config/eccube/config_dev.yml';
'profiler.cache_dir' => __DIR__.'/../app/cache/profiler',
をそれぞれ下記に変更
require_once __DIR__.'/autoload.php';
$config_dev_file = __DIR__.'/app/config/eccube/config_dev.yml';
'profiler.cache_dir' => __DIR__.'/app/cache/profiler',
9.ファイル内記述の変更(その2)
ディレクトリ「ec/app/config/eccube」内にある、「path.yml」の記述を変更します。
root:, tpl:, admin_tpl:など、頭に/ec/htmlとなっている記述すべてから「/ec」を削除してください。(サブドメイン「ec.hoge.com」はディレクトリ「ec」直下のため)
※2016-06-15追記
「root_urlpath:」だけは、「/ec/html/」から「/」に変更しないとダメみたいです。「/ec」だけを削除した状態では、管理画面にログインできなくなりました。
10.ファイルない記述の変更(その3)
ディレクトリ「ec」直下の.htaccess(上記7で移動したファイル)の記述を修正します。
RewriteBase /ec/html
を下記に変更
RewriteBase /
以上。
ここまで完了したら、サブドメイン「ec.hoge.com」でEC-CUBEが表示され、「ec.hoge.com/admin」でEC-CUBEの管理画面にログインできるはずです。
環境が違うと少し設定が違うかもしれません。また、今回はレンタルサーバーのクイックインストールを使いましたが、EC-CUBEサイトからダウンロードしたものでもそれほど変わらないかと思います。
コメント