2017-06-21 14 views
-1

Symfony 3は、2つのWebフロントコントローラーapp.phpとapp_dev.phpを使用します。 env(prod、dev)とdebugを設定するために、env変数を使用して1つのコントローラを使用するように変更するにはどうすればよいですか。symfony 3 webフロントコントローラーenv

私はapp_dev.phpを削除しようとしましたが、symfonyはそのファイルを読み込もうとします。

これは、symfonyを学ぶだけの方法ではないかもしれません。その他の提案は大歓迎です。

+0

symfonyは、エントリポイント(app/app_dev)の場所を強制しません。遭遇したエラーを教えてください。 –

+0

フロントコントローラーはwebディレクトリーに保管されています。私が賢明なことは、env変数を通して環境を設定する可能性を持つフロントコントローラーを使用することです。だから私はdevのコントローラを削除しましたが、どこかsymfonyがこのファイルをロードしようとします – Bham

答えて

0

prodおよびdevの例として、フロントエンドコントローラファイルapp.phpおよびapp_dev.phpがそれぞれ存在します。ドキュメンテーション(http://symfony.com/doc/3.4/configuration/environments.html)が示唆しているように、本番環境向けにいずれかを削除したり、各環境用のカスタムフロントエンドコントローラを作成して、apacheまたはnginxに適切なファイルを読み込ませてSymfonyを起動します。

このファイルには、環境が宣言され、デバッグを有効にするかどうかが示されています。これとは対照的に

//dev environment, with debug enabled 
$kernel = new AppKernel('dev', true); 

、生産のために:あなたは、いくつかの動的要素を持つ単一のコントローラを使用する場合はAppKernelが何をすべきかをインスタンス化される前に、

//prod environment, debug disabled 
$kernel = new AppKernel('prod', false); 

、私はapp_dev.phpを削除し、カスタム・ロジックとapp.phpを使用してお勧めしますあなたは欲しい。

+0

しかし、私が1つのファイルを削除すると、いくつかのエラーが出ます。 symfonyがthouseファイルを期待しているように見えます。明日エラーを投稿します。 – Bham

+0

ファイルが 'apache'または' nginx'がデフォルトのインデックスページとして期待しているファイルである場合にのみ、ファイルを削除するエラーが発生します。 –

+0

ファイルapp_dev.phpを削除すると、画面に表示されます。 入力ファイルが指定されていません。 @Jake Litwickiは、自分のnginxのどこかに設定されていると言っています(嫌な家のホームステイsymfony)。しかし、どこでこれらの設定がapp.phpだけを使用するように変更するのを見つけることができましたか – Bham