私はSymfonyを初めて使用します。いくつかのテスト(Symfony 2.0.13とWAMP2.2のphp5.3.8)を実行し、 ドキュメントを読んでいますが、私は環境と少し混乱しています。
LOCALHOST/Symfony/web/app_dev.php/demo/hello/Foo
(app_devは開発環境を意味しますよね?)に移動すると、Webデバッグツールバーが表示され、プロファイラー情報をクリックすると、[プロジェクト構成]タブに次のように表示され
ます。Environmentdev
次にLOCALHOST/Symfony/web/app.php/demo/hello/Foo
、Webデバッグツールバーに移動します(ところで、なぜこのツールバーが表示されるのですか?これは実稼働環境ではありませんか?ユーザーはデフォルトでこのバーを表示することになっていますか?)また、「プロジェクト構成」にも表示されます。 "タブ:
環境開発
この「デモ」バンドルは、URLがapp_dev.phpまたはapp.phpであるかどうかに関係なく、何らかの形で「dev」に関連付けられているようです。
さらに、さらにいくつかのテストを行いました。ローカルIPは192.168.153.1です。
アクセスしようとすると:
http://192.168.153.1/Symfony/web/app_dev.php/demo/hello/Foo
「このファイルへのアクセスは許可されていません。詳細については、app_dev.phpを確認してください。」と表示されます。したがって、app_dev.phpの行を編集して、(外部)IPを追加すると、アクセスできます。
しかし、私が接続するとき
http://192.168.153.1/Symfony/web/app.php/demo/hello/Foo
それは同じことを言います!そのため、URLに何を入力しても、app.phpが実行されておらず、app_dev.phpが実行されているようです。
これは本当に紛らわしいです!htaccessを確認しましたが、すべてが正しいようです。
誰かが私がこれを理解するのを手伝ってもらえますか?
app_dev.phpとapp.phpのどちらのコードも変更していません。すべてが、箱から出してすぐに「そのまま」です。
2012-05-02編集
何か奇妙なことが起こった。config_prod.ymlを次の行で編集しました:
# load the profiler
framework:
profiler: { only_exceptions: false }
# enable the web profiler
web_profiler:
toolbar: true
intercept_redirects: true
verbose: true
app.phpファイルを保存して編集しました。私が変更した場合に何が起こったのかをテストしたかった:
$kernel = new AppKernel('prod', false); //Symfony default
に
$kernel = new AppKernel('prod', true);
app.php / WHATEVERにアクセスすると、エラーページが表示されたため、すべての変更を元に戻し、Apacheを再起動すると、WebDebugツールバーがPROD(app.php / WHATEVER)に表示されなくなりました。
そのため、方法はわかりませんが、config_prod.ymlファイルとapp.phpは元の状態ですが、現在は期待どおりに機能しているようです。また、外部IPを使用してapp.phpに接続することもできます。
本当に奇妙な...