Symfony2をインストールしました。ファイルのパーミッションを修正した後、ブラウザーから次のポイントを指定して開発環境にアクセスできます。
http://localhost/app_dev.php
ただし、ブラウザをに向けて本番環境にアクセスしようとするとhttp://localhost
、次の例外が発生します(app / logs / prod.logから)。
[2012-08-13 11:30:03] request.ERROR:Symfony \ Component \ HttpKernel \ Exception \ NotFoundHttpException:/ path / to / frameworks / Symfony2/appに"GET/"(キャッチされていない例外)のルートが見つかりません/cache/prod/classes.php行4584[][]
次に、コマンドラインからprod環境で使用可能なルートを確認しました。これがその調査の結果です。
root @ yourbox:〜/ path / to / frameworks / Symfony2 $ php app / console router:debug -e =prod[router]現在のルート名前メソッドパターン
信じられないことに、この環境にルートが定義されていないことを示しています(エラーメッセージを信じていませんでした-本質的に同じことを言っていました)。
だから、私の結論はこれです:Symfony2の箱から出してインストールし、本番環境にはデフォルトルートがありません-これは本当ですか、それともどこかで間違いを犯しましたか?
さらに重要なのは、これをどのように修正するのですか?SF1.xでは、devからprodに、またはその逆に切り替えるのは簡単でした。AcmeDemo
たとえば、本番環境でアプリを表示するにはどうすればよいですか。?
[[アップデート]]
catontheflatからのフィードバックの後、routing.ymlファイルに簡単なテストルートを追加しました。app / config/routing.ymlの内容は次のようになりました。
_welcome2:
pattern: /test
defaults: { _controller: AcmeDemoBundle:Welcome:index }
ブラウザで試してみるとhttp://localhost/test
、同じ404エラーが発生します。コンソールで使用可能なルートをデバッグすると、次の出力が得られます。
root@yourbox:~/path/to/frameworks/Symfony2$ php app/console router:debug -e=prod
[router] Current routes
Name Method Pattern
_welcome2 ANY /test