1

環境に関する Symfony2 のドキュメントを読みました。/app.php または /app_dev.php を使用して、異なる環境でアプリケーションを実行することについてのみ言及しています。デフォルトの .htaccess ファイルは、要求を / から /app.php に書き換えます。これは、運用環境に最適です。

URI で特定のフロント コントローラーを使用せずに、アプリに環境を決定させる最善の方法は何ですか? 運用サーバーに PagodaBox を使用しており、APP_ENV 変数を「運用」に設定しています。app.php に条件付きロジックを配置して、使用する appkernel を決定する必要がありますか?

$env = getenv('APP_ENV');

if ( ! $env )
{
    $env = 'development';
}

use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\ClassLoader\ApcClassLoader;
use Symfony\Component\Debug\Debug;

$loader = require_once __DIR__.'/../app/bootstrap.php.cache';
require_once __DIR__.'/../app/AppKernel.php';

if ( $env == 'production' )
{
    $kernel = new AppKernel('prod', TRUE);
}
elseif ($env == 'testing')
{
    // Placeholder for when I'll need a testing environment
}
else
{
    Debug::enable();
    $kernel = new AppKernel('dev', TRUE);
}

$kernel->loadClassCache();
$request = Request::createFromGlobals();
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);
4

1 に答える 1