2014-09-24 4 views
0

안녕하세요 laravel 4를 기반으로 fortrabbit에 기반한 애플리케이션을 배포합니다. 나는 LARAVEL_ENV이laravel 4 getenev()와 fortrabbit의 환경 설정

을 자극하는 내가 env_var 을 정의 내가 fortrabbit에

$env = $app->detectEnvironment(function() { 
     return getenv('LARAVEL_ENV') ?: 'local'; 
}); 

을 수정 bootstrap/start.php에 현지 생산 환경

을 설정하려고하지만 난 fortrabbit에서 시도하는 경우

php artisan env 

은 내가 획득 대신 찌르다

내 코드가 잘못 되었나요?

+0

Fortrabbit에서 정확히 어떻게 'LARAVEL_ENV'를 정의 했습니까? – lowerends

+0

예 Fortvbit 대시 보드에 정의 됨 – mardon

+1

Fortrabbit 대시 보드에서 환경 변수를 설정/수정하는 경우 새 SSH 세션을 사용하여 명령 줄에서 새 값을 가져와야합니다. –

답변

1

이 Fortrabbit의 대시 보드에서 환경 변수를 설정 한 후, 당신은 당신의 start.php 파일이 작성해야합니다

이 경우 프로덕션 환경으로 폴백 더 잘 더 환경 변수가없는 것을
$env = $app->detectEnvironment(function() { 
    return isset($_SERVER['LARAVEL_ENV']) 
     ? $_SERVER['LARAVEL_ENV'] 
     : 'prod'; 
}); 

주, 프로덕션 응용 프로그램에서 디버그 로그를 실수로 표시하고 싶지 않으므로

+0

하지만 내 로컬 호스트에서 설정 한 경우에도 LARAVEL_ENV가 표시됩니다. – mardon

+0

사실, 로컬 환경에서'LARAVEL_ENV' 값을'local'으로 명시 적으로 설정해야합니다. 물론 의무 사항은 아니지만 언젠가는 프로덕션 환경에 디버그 로그를 표시하지 않을 수 있습니다. 이것을 원하지 않는다면 위의 코드에서''local ''로''prod ''를 대체 할 수 있습니다. – lowerends