Symfony环境和调试栏

Mig*_*tín 3 php wamp environments symfony

我是Symfony的新手.在做一些测试(Symfony的2.0.13与WAMP2.2 php5.3.8)和阅读 文档,但我也有点与环境的混乱.

当我去LOCALHOST/Symfony/web/app_dev.php/demo/hello/Foo(app_dev意味着开发环境,对吧?)我可以看到网页调试工具条,点击的探查信息,在"项目配置"选项卡上,我可以看到: 环境开发

现在我去LOCALHOST/Symfony/web/app.php/demo/hello/Foo和调试工具栏(顺便说一句,为什么我现在看到的这个工具栏?这不是一个生产环境?是我的用户应该看到默认情况下这个吧?)我也看到了,在"项目配置"标签: 环境开发

看来,这个"演示"包是某种方式与"开发"相关的,不管URL是app_dev.php或app.php什么?

此外,我做了一些测试:我的本地IP是192.168.153.1.

当我尝试访问时:

http://192.168.153.1/Symfony/web/app_dev.php/demo/hello/Foo
Run Code Online (Sandbox Code Playgroud)

它说:"您不能访问此文件.请查看app_dev.php以获取更多信息." 所以,好吧,如果我在app_dev.php中编辑了行并添加了我的(外部)IP,我就可以访问了.

但是,当我连接到

http://192.168.153.1/Symfony/web/app.php/demo/hello/Foo
Run Code Online (Sandbox Code Playgroud)

它说的一样!因此,似乎我的app.php没有被执行,并且无论我在URL中键入什么,都会执行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
Run Code Online (Sandbox Code Playgroud)

保存,然后编辑app.php文件.想要测试如果我改变了会发生什么:

$kernel = new AppKernel('prod', false); //Symfony default
Run Code Online (Sandbox Code Playgroud)

$kernel = new AppKernel('prod', true);
Run Code Online (Sandbox Code Playgroud)

当我去app.php /不管,一个错误页面出现,让我恢复了所有的变化,重新启动Apache和现在WebDebug工具栏不再显示PROD(app.php /其他)

所以,我不知道怎么回事,但它似乎工作作为目前预计,虽然config_prod.yml文件和app.php处于原始状态.它还允许我将我的外部IP连接到app.php

真的很奇怪...

小智 5

对于那些使用格式错误的模板进行输出的人来说,这是一个答案.

[已删除链接以重定向到垃圾网站]

刚为你复制:

"嗨.你必须在你正在查看的页面上使用正确的HTML.我认为调试栏会在它之前附加</body>.所以如果你有这样的页面(见下文),你应该看到调试栏."

码:

<html> <head>

</head> <body>

</body> </html>
Run Code Online (Sandbox Code Playgroud)