[[EC-CUBEめも]] EC-CUBE3.0.x系からカスタマイズの学習コストの低下を目指すなどの目的で3.n系のリリースが計画されていましたが、2018年8月6日にバージョン番号が「EC-CUBE 4.0」となることが発表されました。~ https://www.ec-cube.net/news/detail.php?news_id=300 正式リリースは2018年9月末予定ですが、仕様Fix版であるEC-CUBE 4.0-beta2がリリースされたので、こちらをインストールしてみます。 大事なポイントはシステム要件が''PHP 7.1.3 以降''と変更になったことです。~ またフレームワークが Silex から Symfony3.4 になりました。 直前にリリースされたEC-CUBE 3.n-α5のインストール方法や雑感については[[こちら>EC-CUBE3.n系のインストール]]の記事をご参照下さい。 EC-CUBE 4.0 開発ドキュメント・マニュアル~ http://doc4.ec-cube.net/ *ZIPファイルからインストール [#ve1b8fb6] 以下から eccube-4.0.0-beta2.zip ファイルをダウンロードし、public_html以下に展開します。~ https://www.ec-cube.net/product/4.0/ $ cd public_html $ /usr/local/bin/composer.phar install $ bin/console eccube:install 対話形式でインストールが進むので、Database Url入力時に使用したいデータベースに応じて入力します。~ データベース作成権限があれば事前に作成しておく必要はありません。 # MySQLの場合 mysql://<user>:<password>@<host>/<database name> # PostgreSQLの場合 postgres://<user>:<password>@<host>/<database name> [OK] EC-CUBE installation successful. ちなみにSymfonyのバージョンは以下で確認できます。 $ bin/console --version Symfony 3.4.12 (kernel: Eccube, env: dev, debug: true) *セッションデータが作成できずにエラー [#c2eb0d07] インストールが完了し、ブラウザにてアクセスすると500エラーが発生。 Warning: SessionHandler::read(): Session data file is not created by your uid セッションファイルは var/sessions/ 以下に生成されます。~ ちなみにログは var/log/ 以下です。 セッションのsave_pathを変更する場合は以下のファイルを変更します。 app/config/eccube/packages/framework.yaml framework: secret: '%env(ECCUBE_AUTH_MAGIC)%' default_locale: '%locale%' translator: fallback: ['%locale%'] csrf_protection: { enabled: true } http_method_override: true trusted_hosts: ~ # https://symfony.com/doc/current/reference/configuration/framework.html#handler-id session: handler_id: session.handler.native_file #save_path: '%kernel.project_dir%/var/sessions/%kernel.environment%' save_path: '/tmp' *メール送信 [#v4012221] デフォルトの .env 設定だとメールは送信されません。~ sendmailを使用する場合は書き換えます。 # MAILER_URL=null://localhost MAILER_URL=sendmail *モードの切り替え [#u84f945e] index_dev.php が廃止され、.env ファイルにてモードの切り替えを行うようになりました。 APP_ENV が dev だとSymfonyのツールバーが表示され、開発モードになります。~ 本番運用時は prod にするとツーバーが非表示となり、キャッシュが有効になります。 APP_DEBUG は 1 だとエラー発生時にエラーの詳細が表示されます。0 にすると表示されなくなります。 開発時 APP_ENV=dev APP_DEBUG=1 リリース時 APP_ENV=prod APP_DEBUG=0