Среды Symfony и панель отладки

Я новичок в Symfony. Я проводил некоторые тесты (Symfony 2.0.13 с php5.3.8 в WAMP2.2) и читал документацию, но я как-то запутался в окружении.

Когда я иду в LOCALHOST/Symfony/web/app_dev.php/demo/hello/Foo (app_dev означает среду разработки, не так ли?) Я могу видеть веб-панель отладки и, щелкнув информацию о профилировщике, на вкладке "Конфигурация проекта" я вижу: Среда разработки

Теперь я иду в LOCALHOST/Symfony/web/app.php/demo/hello/Foo и на панели инструментов веб-отладки (кстати, почему я сейчас вижу эту панель инструментов? Разве это не рабочая среда? Должны ли мои пользователи видеть эту панель по умолчанию?) Я также вижу на вкладке "Конфигурация проекта": Среда DEV

Кажется, что этот "демонстрационный" пакет каким-то образом связан с "dev", независимо от того, какой URL-адрес app_dev.php или app.php??

Более того, я провел еще несколько тестов: мой локальный 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

Это говорит то же самое! Таким образом, кажется, что мой app.php не выполняется, а app_dev.php выполняется независимо от того, что я ввожу в URL.

Это действительно сбивает с толку! Я проверил свой 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

Очень странно...

2 ответа

Вот ответ для тех, кто использует некорректный шаблон для вывода.

[Ссылка удалена для перенаправления на спам-сайт]

Просто скопировал для вас:

"Привет. У вас должен быть правильный HTML на странице, которую вы просматриваете. Я думаю, что панель отладки прикрепляется непосредственно перед </body>, Так что если у вас есть такая страница (см. Ниже), вы должны увидеть панель отладки."

Код:

<html> <head>

</head> <body>

</body> </html>

Вам необходимо отключить IP-фильтрацию в app_dev.php. И вы сможете увидеть панель отладки с внешнего ip.

С уважением, Макс

Другие вопросы по тегам