3

私は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に接続することもできます。

本当に奇妙な...

4

2 に答える 2

3

app_dev.phpでIPフィルタリングを無効にする必要があります。そして、外部IPからデバッグバーを見ることができます。

よろしく、マックス

于 2012-06-08T09:45:09.140 に答える