Blogブログ

TORAT | 2020.10.15

MAMPを使ってEC-CUBE4のローカル環境構築とintl拡張モジュールエラーの解消法

  • EC-CUBE
  • MAMP
  • 開発環境

EC-CUBE4系のカスタマイズや開発を行う際、windowsのMAMPを用いてローカル環境を構築しようとするとエラーが出て手間がかかったため備忘録として残します。同じようなエラーが発生した方の参考になると幸いです。

MAMPのダウンロードとインストール

今回はMAMP環境が前提となりますのでMAMPのインストールがお済みでない場合はMAMP公式サイトよりダウンロードを行ってください。

上部メニューの「Downloads」をクリックしDownload MAMP & MAMP PROページへ移動します。該当するOSを選択しダウンロード、手順に沿ってインストールを行ってください。

EC-CUBE4をダウンロード

続いてEC-CUBE4系をダウンロードします。こちらも公式サイトへアクセスし、最新のバージョンをダウンロードします。

MAMP内へEC-CUBEを配置

先ほどダウンロードしたEC-CUBEを解凍し、MAMPのhtdocsフォルダに入れます。

EC-CUBE4系の推奨環境について

まずEC-CUBE4系の推奨環境は下記となっています。

  • PHP7.1以上
  • MYSQL 5.6以上

MAMPのメニューよりMAMP>Preferences>PHPより推奨環境のPHPバージョンに設定します。今回はphp7.2.14を選択しました。

データベースの作成

phpMyAdminへアクセスし、データベースの作成をします。

  • データベース名:eccube4(例)
  • 照合順序:utf8_general_ci

.envファイルの設定

上記までで「localhost」にアクセスし、インストールもしくは「.env」ファイルを編集します。

「DATABASE_URL=」という項目があるので

DATABASE_URL=mysql://root:root@localhost/eccube4
#DATABASE_URL=mysql://ユーザー名:パスワード@ホスト/データベース名

と設定します。

エラー「intl拡張モジュールが有効になっていません」について

ここまでの状態でlocalhostへアクセスし画面を表示すると以下のようなエラーが表示されました。

intl拡張モジュールを有効にします。これを有効にするにはMAMPのphp.iniの設定を行います。

php.iniファイルの変更

今回はPHP7.2.14を使用しているため下記のphp.iniを変更します。

MAMP/conf/php7.2.14/php.ini

「php.ini」を開くとコントロール+Fもしくはコマンド+Fで「intl」と検索します。このような行が見つかります。

;extension=intl

先頭の「;」を外して有効化します。

extensions=intl

有効になったかどうかの確認をするには、MAMPの「Open WebStar page」を開き「phpinfo」へアクセスします。

コントロール+Fもしくはコマンド+Fで「intl」と検索し、intlが表示されるとOKです。

タイムアウトの設定

ついでにタイムアウトと、時間の設定も行っておきましょう。

「max_execution_time」という項目があります。

デフォルトでは以下のように30秒でタイムアウトとなる設定になっていますmax_exection_time=30

動作環境が遅くタイムアウトの発生を防ぐために数値を大きくすることをおすすめします。60秒に設定するにはこのようになります。

max_execution_time = 60 

タイムゾーンの設定

また時間の設定ですが

date.timezone = Asia/Tokyo

に変更します。ログを正しい時間で確認できるため設定することを推奨します。

ログは、MAMP>logs>phperror.logで確認できます。

環境変数の設定

もし上記まででもうまく行かなかった場合は環境変数の設定をします。

[Windows]キー+[Pause/Break]キー>システムの詳細設定もしくは、[Windows]キー+[R]キー「sysdm.cpl」と検索します。

環境変数>Path>編集>新規>C:\MAMP\bin\php\php7.2.14

必要であればPCを再起動してください。

これでうまくEC-CUBEの表示ができました。

この記事を書いた人

TORAT 管理者

関連記事

Recommend愛されているブログ