EC-CUBE4系をXSERVERにもっとも簡単にインストールする手順

#概要
この記事を書いている時点（2019年6月12日）では、残念ながらEC-CUBE4系の簡単インストール機能が備わっているレンタルサーバーがありません。

**後に、XSERVER上ではEC-CUBE4系の簡単インストール機能が備わりました（2020/3/19現在）。**

ここでは、簡単インストール機能がなくても比較的簡単にインストールが出来る手順を紹介します。

この記事は、特に店舗運営者・サイト制作者を意識して書かれており、また初心者向けであるため、SSHの使い方などは扱いません。しかしながら、他でご紹介されているインストール手順よりはきっと簡単で、またSSL設定やメールのSMTP設定にも触れていますので、より実践的でもあるかなと思います。

SSL設定やメールのSMTP設定については、本来分けて説明したほうが良いかもしれませんが、一発でより良いインストール作業が終わることを目指して、あえてこの記事で言及しています。

それでは、解説してまいります。

###用意していただくもの（事前準備）

- [XSERVER](https://www.xserver.ne.jp/)：私はX10プランを使用しました。上位プランでも構わないかと思います。
- [MySQL](https://www.xserver.ne.jp/manual/man_db_setting.php)：データベース。XSERVERでの手動追加方法は[こちら](https://www.xserver.ne.jp/manual/man_db_setting.php)。文字コードはUTF-8にしておきます。
- [独自SSL](https://www.xserver.ne.jp/manual/man_server_ssl.php)：XSERVERサーバーパネルにて、独自SSLが設定可能です。
- [メールアカウント（メールアドレス）](https://www.xserver.ne.jp/manual/man_mail_add.php)：EC-CUBEで使用するメールアドレスを設定しておきます。
- [EC-CUBE One-File Downloader](https://github.com/tao-s/eccube-downloader) ：今回使うもの。[tao](https://qiita.com/tao_s)さん作成ありがとうございます！

###注意

こちらの記事（情報）は、2019年6月12日時点でEC-CUBE 4.0.2を使用しています。
将来的なバージョンアップにより、バージョン情報等が変更になる可能性があります。

ここではサーバーの契約方法、予め用意すべきMySQLの作成（手動追加）手順は割愛させていただきます。

難しいと思われる内容については参考リンクを設けますので、そちらをご参照ください。

###参考リンク

- [EC-CUBE4のインストール方法と具体的な手順](https://tab-log.com/eccube4-install)（TABLOG様）

EC-CUBE4のレンタルサーバーへのインストール方法がもっとも丁寧に書かれています。
しかしながら、FTPで大量のファイルをアップロードする必要があるため、少なからず初心者の方にとってはアップロード失敗のリスクが考えられるかと思います（アップロードしたファイルが足りない等）。98.3MBほどありますので、FTPでアップロードするのは時間がかかります。

- [MySQLの設定](https://www.xserver.ne.jp/manual/man_db_setting.php)（XSERVER様）

予め「MySQL（データベース）の追加～MySQLアクセス権の設定」の作業を行っておきます。
文字コードはUTF-8に設定してください。誤って他の文字コードにした場合は、一旦データベースを削除して再度作り直してください。

- [独自SSL設定](https://www.xserver.ne.jp/manual/man_server_ssl.php)（XSERVER様）

予め、XSERVERの独自SSLを設定しておきます。
ECサイトではSSLの設定が必要になりますので、ここでは先に設定します。

#ざっくり手順

[EC-CUBE One-File Downloader](https://github.com/tao-s/eccube-downloader)のGitHubにアクセスをして、「Clone or download」→「Download ZIP」をクリックします。
![eccube-downloader.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/336790/0efed48b-6e30-4389-ccd9-a69797ab5727.png)

ZIPファイルを解凍すると、下記のファイルが取得できます。
![eccube-downloader2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/336790/b4b102a7-5379-0622-469c-c9661cd561af.png)

使用するファイルはdw.phpのみです。この1ファイルをEC-CUBE4を設置したいフォルダ内にアップロードします。
XSERVERの[ファイルマネージャ](https://www.xserver.ne.jp/login_file.php)を使用してアップロードしても良いでしょう。

ファイルマネージャには、XSERVERのインフォパネルからでもアクセス可能です。
![SnapCrab_NoName_2019-6-12_5-16-34_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/336790/1b44841c-bbd2-fb8b-a5ef-137f79719cc2.png)

###XSERVERのファイルマネージャ（WebFTP）を使用して、dw.phpファイルをXSERVER上にアップロードする

XSERVERでは、基本的にpublic_html以降のフォルダ内にファイルをアップロードします。
初期状態のファイルが残っていたら、すべて削除してください。
削除したいファイルにチェックを入れ、「ファイルの削除」をクリックします。
![SnapCrab_NoName_2019-6-12_5-20-11_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/336790/155a4dbc-1e9b-6db8-aa23-9ad98e593dd7.png)

削除が完了しました。フォルダ内が空であることを確認してください。
次に、「ファイルの選択」をクリックしてdw.phpファイルを読み込み、「アップロード」をクリックします。
![SnapCrab_NoName_2019-6-12_5-21-6_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/336790/559d0f4d-653d-a81b-7052-afeab9aab68a.png)

無事にdw.phpがアップロード出来ました。
![SnapCrab_NoName_2019-6-12_5-21-26_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/336790/b6a309cf-058e-7662-4589-55af1dd13f80.png)

###ブラウザでdw.phpにアクセスし、最新バージョンのEC-CUBEのダウンロードを行う

Google Chromeなどで **http://アップロードしたURL/dw.php** にアクセスし、「ダウンロード開始」をクリックします。
![SnapCrab_NoName_2019-6-12_5-35-37_No-00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/336790/5ab2f120-6a1c-5295-c830-d38e924b53b9.png)

これだけの作業で、簡単にEC-CUBE4の最新版ダウンロードが可能で、そのままEC-CUBE4のインストール画面が出てきます。
**※dw.phpファイルは自動で削除されます。**

#EC-CUBE4のインストール手順

いよいよEC-CUBE4のインストール画面に触れます。
以降については、[EC-CUBE4のインストール方法と具体的な手順](https://tab-log.com/eccube4-install)（TABLOG様）のページを参考にしつつ、下記の通りに設定してください。

なお、このときインストール画面では、URLを**http://**から**https://**に書き換えて、予めSSLでアクセスするようにしてください。SSLでのアクセスを有効にするには、事前にXSERVER側で独自SSL設定が必要です。

###STEP1. ようこそ

**mod_rewrite が有効になっているか不明です。**
**[推奨] apc拡張モジュールが有効になっていません。**
というメッセージが出ていますが、無視してください。

###STEP2. 権限チェック

**>>○：アクセス権限は正常です**
という表示が出れば問題ありません。

###STEP3. サイトの設定

- 店名：任意のもの
- メールアドレス：[メールアカウントの追加](https://www.xserver.ne.jp/manual/man_mail_add.php)で設定したメールアドレスを入力
- ログインID：任意のもの
- パスワード：任意のもの
- 管理画面のディレクトリ名：admin以外の名称を推奨（任意のもの）
- **サイトへのアクセスを、SSL（https）経由に制限します** にチェックを入れる
- 管理画面へのアクセスを、以下のIPに制限します：無記入（空欄）

####メールの設定（SMTP設定）

XSERVERの[メールソフトの設定](https://www.xserver.ne.jp/manual/man_mail_setting.php)を参考にしながら、下記の設定を行ってください。

- SMTPホスト：sv***.xserver.jp（契約サーバーにより異なる）
- SMTPポート：587
- SMTPユーザー：[メールアカウントの追加](https://www.xserver.ne.jp/manual/man_mail_add.php)で設定したメールアドレスを入力
- SMTPパスワード：[メールアカウントの追加](https://www.xserver.ne.jp/manual/man_mail_add.php)で設定したパスワード

※上記ではSSL接続なし：587番ポートに接続するように設定しておりますが、後にSSL接続あり：465番ポートに書き換えます。しかしながら、ここでは不具合（会員登録や注文、問い合わせでタイムアウトまで非常に長い時間待機させられるが、結局メールが送信されなくなる（メールが届かなくなる））を避けるため465番ポートを設定せず、まずは587番ポートを設定するようにします。

###STEP4. データベースの設定

- データベースの種類：MySQL
- データベースのホスト名：XSERVERサーバーパネルのMySQL設定に記載されているものを入力（詳しくは[こちら](https://www.xserver.ne.jp/manual/man_db_spec.php)）
- データベースのポート番号：無記入（空欄）
- データベース名：[MySQLの設定](https://www.xserver.ne.jp/manual/man_db_setting.php)で設定したデータベース名を入力
- ユーザ名：[MySQLの設定](https://www.xserver.ne.jp/manual/man_db_setting.php)で設定したMySQLユーザID
- パスワード：[MySQLの設定](https://www.xserver.ne.jp/manual/man_db_setting.php)で設定したMySQLユーザのパスワード

###STEP5. データベースの初期化

初めて使うデータベースの場合は、「データベースの初期化は行わない」にチェックを入れずに次に進んでください。

###STEP6. インストール完了

「インストールが完了しました！」画面が表示されます。
以上でEC-CUBE4のインストールは完了です。お疲れ様でした！