LoginSignup
6
3

More than 5 years have passed since last update.

[EC-CUBE4]インストール後にbin/console server:runが実行できなくなる

Last updated at Posted at 2019-05-14

環境

  • Ubuntu 18.04
  • PHP 7.2
  • MySQL 5.7
  • EC-CUBE 4.0.2 ( 基盤としているSymfonyは3.4.22 )

背景

モダンなフレームワークは大半がサポートしていますがEC-CUBE4(が利用しているsymfonyフレームワーク)には開発用途のビルトインウェブサーバがあります。これを使えば、本格的なWebサーバを設置しないでもクイックに開発がすすめられます。

EC-CUBEのパッケージを公式サイトからダウンロードして、ルートディレクトリ直下でbin/console server:runで実行が開始されて、http://127.0.0.1:8000でアクセスできます。(Ctrl+Cで終了)

問題

インストールが完了後、一度、終了するとこのコマンドが利用できなくなります。エラー内容は以下です。

There are no commands defined in the "server" namespaces

参考として画面も。

対処

インストール後にルートディレクトリ直下に作成される.env内のAPP_ENVの値をprodからdevに変更することで実行できるようになります。

APP_ENVはsymfonyが管理する定義のようですが、こういった挙動は常識なんですかね???
How to Master and Create new Environments (Symfony Docs)

所感

EC-CUBE4、2日間かかって、いまだに開発環境が構築できません。主な罠は以下。
心が折れそうです。。。(T_T)

  • インストーラの(PHP拡張モジュールの有無に関する)誤った警告 ← 次のエラーと関係あるんじゃないか?と思って調査に時間を要した
  • プラグインインストール時の一貫性のないエラー(しかもときどき成功する)
  • システム要件にPHP7.1以上と書かれているがPHP7.3ではcomposerエラー発生
  • インストール後にビルトインウェブサーバが利用できなくなる(本件)
  • インストール方法の違い(Composer利用とパッケージ利用)で、インストール後のディレクトリ構成が異なる。←気持ち悪い

その他、調査に時間を要したものとして以下など。

  • SESでメール送信するための設定方法の調査
  • 拡張ライブラリをインストールするためのコマンド
6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3