good-arrow’s blog

https://good-arrow.net/

EC CUBE 3 をローカルVMに構築してみた。

EC CUBE とは無償で使えるECサイト向けCMSです。

ECサイト構築・リニューアルは「ECオープンプラットフォームEC-CUBE」

触ったことがなかったので、Hyper-V上に構築してみました。
本稿の EC CUBE がバージョン3なのは、既存環境の検証目的のためなので、
これから始める人はバージョン4で構築してください。

環境:Cent OS 7

  • yum -y updateとか基本的なネット接続は済ましておいてください。
  • ファイルダウンロード用にwgetを入れておいてください。
  • SELinuxFirewallは無効にしておいてください。(公開時はダメよ)

PHPをバージョン指定でインストールする

yum -y install epel-release
yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
yum -y install httpd php71 php71-php
yum -y install --enablerepo=remi-php71 php php-cli php-common php-devel php-fpm php-gd php-mbstring php-mysqlnd php-pdo php-pear php-pecl-apcu php-soap php-xml php-xmlrpc php-opcache

EC CUBE3をダウンロード、解凍

cd /var
wget http://downloads.ec-cube.net/src/eccube-3.0.17.tar.gz
tar -zxvf eccube-3.0.17.tar.gz
rm eccube-3.0.17.tar.gz

Apacheの設定

vi /etc/httpd/conf/httpd.conf

変更箇所は3ヶ所

# 1. DocumentRoot
DocumentRoot "/var/eccube-3.0.17/html"

# 2. ServerName
ServerName www.example.com:80

# 3. Directory
<Directory>
    AllowOverride all
    Require all granted
</Directory>

PHPモジュールが足りないと怒られたので追加

yum -y install --enablerepo=remi-php71 php-zip
yum -y install --enablerepo=remi-php71 php-opcache

APCの設定が必要との事で行う

vi /etc/php.d/40-apcu.ini

変更箇所は3点。値にこだわりはありません。

apc.shm_size=128M
apc.ttl=86400
apc.gc_ttl=86400

MySQLをインストール、設定

まず初期で入っているMariaDBを何も考えず消す。

yum remove mariadb-libs.x86_64
rm -rf /var/lib/mysql/

MySQLをインストール

rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
yum -y install --enablerepo=mysql57-community mysql-community-server

MySQLを初期起動

systemctl start mysqld
grep 'password' /var/log/mysqld.log
(結果)
[Note] A temporary password is generated for root@localhost: XXXXXXX (←初期パスワードが表示される)

初期パスワードをコピーしておく

MySQLサーバーに接続してDB設定をする

MySQLサーバーに接続、先ほどの初期パスワードを入力します。

mysql -u root -p

以下、MySQLコマンド。

1)MySQLサーバのパスワードを変更(別にしなくてもいい)

ALTER USER 'root'@'localhost' IDENTIFIED BY '(任意のパスワード)';

2)データベース作成

create database eccube3;

3)EC CUBE3用のユーザーとパスワードの作成

create user eccube3 identified by '(任意のパスワード)';

4)作成したユーザー[eccube3] にデータベース[eccube3] の操作権限を割り当てる

grant all on eccube3.* to eccube3;

終わったら quit で元のコンソール画面に戻る

コンポーザーなるものをPHPに追加

curl -sS https://getcomposer.org/installer | php
php composer.phar create-project ec-cube/ec-cube ec-cube "^3.0"

WEB画面を開き、手順に沿ってインストールを完了させる

Webブラウザでアクセス

(例) http://192.168.0.xxx/install.php

セットアップ完了後について

WEB画面上の表示される管理画面へのリンクでは開きませんでした。。
URLの間に「index.php」を挟むと開くようです。(激おこ)

http://192.168.0.xxx/index.php/manage/

治す方法もありますが、上記謎仕様のイライラのあまり放棄。
顧客に提供(しないけど)するときはちゃんとがんばりましょう。

【参考サイト 】
CentOS7にEC-CUBE3を導入してみるメモ - Qiita

丁寧さの欠片もないメモ程度ですが、誰かの役に立てば。
書くことがないので、今のところPR活動を兼ねております。謝々。