2016-05-05 11 views
0

Ich habe bemerkt, dass Laravel (5.1) die gesamte .env-Datei protokolliert, wenn ich versuche, etwas anderes zu protokollieren, das nicht verwandt ist.Warum Laravel gesamte Env-Datei protokollieren?

Hier ist ein Beispiel:

[2016-05-05 14:26:58] APP_ENV=local 
APP_DEBUG=true 
APP_URL=dev.mywebsite 
APP_KEY=123321123123123123123123 

DB_HOST=localhost 
DB_DATABASE=mywebsite 
DB_USERNAME=root 
DB_PASSWORD=....DEBUG: teste at on line . Data: [] 

Welche sein sollte:

[2016-05-05 14:26:58] DEBUG: teste at on line . Data: [] 

Ich denke, dass dies begann, als ich die env-Datei ändern mein Rechner laufen nach. Dies ist, was ich geändert:

- ./bootstrap 
--- environment.php 
- ./env 
--- ./env/.development.env 
--- ./env/.production.env 

... das ist, was ich bei environment.php

$env = $app->detectEnvironment(function() { 

    $dir = __DIR__.'/../env/'; 

    if(!isset($_SERVER['HTTP_HOST'])) { 
    return getenv('APP_ENV'); 
    } 

    switch($_SERVER['HTTP_HOST']) { 
    case 'mywebsite.herokuapp.com': 
    $dotenv = '.production.env'; 
    $getenv = 'production'; 
    break; 

    default: 
    $dotenv = '.development.env'; 
    $getenv = getenv('APP_ENV'); 
    break; 
    } 

    $content = trim(file_get_contents($dir . $dotenv)); 

    putenv('APP_ENV='.$content); 
    Dotenv::load($dir, $dotenv); 

    return $getenv; 

}); 

Die env-Dateien, es funktioniert, aber ich verstehe es nicht, warum der Inhalt der Datei wurde in der Protokolldatei gedruckt.

+2

Sie dies als eine Antwort setzen sollte und die Fragezeichen als beantwortet. – alexrussell

Antwort

0

nerver Geist, war das Problem, dass wenn ich Dotenv bin mit, Ich nicht putenv verwenden müssen.

So wird der Code sein:

$env = $app->detectEnvironment(function() { 

    $dir = __DIR__.'/../env/'; 
    $host = (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : 'local'); 

    switch($host) { 
    case 'mywebsite.herokuapp.com': 
    $dotenv = '.production.env'; 
    break; 

    default: 
    $dotenv = '.local.env'; 
    break; 
    } 

    Dotenv::load($dir, $dotenv); 

    return getenv('APP_ENV'); 

}); 
Verwandte Themen