67

私が走るとき、私$ php artisan envは得る;

Current application environment: production

これを開発などに変更するにはどうすればよいですか? だから私はエラーを見ることができます..私は多くのドキュメントを読みましたが、初心者にとって理解するのはまったく簡単ではありません. サーバー構成の経験はありません。

これを行う「スマートな」方法があると確信していますが、今のところ興味があるのは、環境を手動で変更することだけです。どうすればいいですか?

4

5 に答える 5

98

Laravel 5 は.env、プロジェクトのルートにあるファイルから環境関連の変数を取得します。APP_ENVたとえば、次のように、必要なものを設定するだけです。

APP_ENV=development

これは、現在の環境を識別するために使用されます。エラーを表示したい場合は、同じファイルでデバッグ モードを有効にする必要があります。

APP_DEBUG=true

このファイルの役割は、.envアプリケーションを実行しているマシンに応じて異なる設定を行えるようにすることです。したがって、本番サーバーでは、.envファイル設定はローカルの開発環境とは異なります。

于 2015-02-25T13:24:40.033 に答える
52

Laravel 5 は.envfile を使用してアプリを構成します。.envgithub や bitbucket などのリポジトリにコミットしないでください。ローカル環境で.envは、次のようになります。

# .env
APP_ENV=local

運用サーバーの場合、次の構成がある場合があります。

# .env
APP_ENV=production
于 2015-02-25T13:30:15.943 に答える
6

あなたも見ることができるのは、公開されたメソッドですApplication->loadEnvironmentFrom($file)

複数のサブドメインで実行するには、1 つのアプリケーションが必要でした。だからbootstrap/app.php私は次のようなものを追加しました:

$envFile = '.env';
// change $envFile conditionally here
$app->loadEnvironmentFrom($envFile);
于 2015-03-19T13:06:24.507 に答える
-4

Laravel では、デフォルトの環境は常に production です。

あなたがする必要があるのはbootstrap/start.php、あなたの環境のために正しいホスト名を指定することです.例えば:

/*
|--------------------------------------------------------------------------
| Detect The Application Environment
|--------------------------------------------------------------------------
|
| Laravel takes a dead simple approach to your application environments
| so you can just specify a machine name for the host that matches a
| given environment, then we will automatically detect it for you.
|
*/

$env = $app->detectEnvironment(array(
    'local' => array('homestead'),
    'profile_1' => array('hostname_for_profile_1')
));
于 2015-02-25T13:32:38.940 に答える