Implantação do Laravel 4.1 - a produção .env.php não está sendo reconhecida

Por alguma razão, meu aplicativo laravel de produção pensa que está no ambiente local.

/var/www/appname/.env.php

<?php

return 
[
    'APP_ENV'   =>  'production',
    'DB_HOST'   =>  'HIDDEN',
    'DB_NAME'   =>  'HIDDEN',
    'DB_PASSWORD'   =>  'HIDDEN'
];

/var/www/appname/bootstrap/start.php

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

/var/www/appname/app/config/database.php

...
...
'mysql' => array(
        'driver'    => 'mysql',
        'host'      => getenv('DB_HOST'),
        'database'  => getenv('DB_NAME'),
        'username'  => getenv('DB_USERNAME'),
        'password'  => getenv('DB_PASSWORD'),
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => 'lar_',
    ),
...
...

sudo php artisan env (via SSH)

`Current application environment: local

php artisan tinker entãogetenv('DB_NAME')

$ php artisan tinker
[1] > getenv('DB_NAME');
// false

Portanto, minhas variáveis de ambiente não estão sendo definidas ou o Laravel não está reconhecendo minha.env.php arquivo para o ambiente de produção.

Atualizar

Com alguma ajuda do Anultro no IRC, parece que o .env.php ainda não foi carregado. Como tal, APP_ENV deve ser definido antes que o laravel tente detectar ambientes. Isso faz sentido, porque o Laravel precisa saber qual ambiente está executando antes de determinar se deve usar.env.php ou.env.local.php.

Tendo dito isto,.env.php ainda deve ser usado para armazenar credenciais de banco de dados e chaves secretas etc ... Mas ainda estou tendo um problema porque o aplicativo ainda está retornando falso quando tento executargetenv('DB_NAME')

Alguma sugestão?

questionAnswers(1)

yourAnswerToTheQuestion