0

我正在彻底了解 Symfony 2 的快速入门,但我感到很困惑。解压 Symfony2 后,我有以下目录结构(如文档中所述):

/var/www/ <- web root directory
    Symfony/ <- unpacked archive
        app/
            cache/
            config/
            logs/
            Resources/
        bin/
        src/
            Acme/
                DemoBundle/
                    Controller/
                    Resources/
                    ...
        vendor/
            symfony/
            doctrine/
            ...
        web/
            app.php
            ...

我有演示工作在<host>/Symfony2/web/app_dev.php/demo/welcome/James。到现在为止还挺好。

我知道我不能使用 apache mod_rewriteapp_dev.php所以我想知道是否有人可以一步一步地给我:

  • 移到DemoBundle使用app.php(因为<host>/Symfony2/web/app.php/demo/hello/James不工作。它抛出了一个 Symfony 错误。我发誓我什么都没碰过。我在教程第一页的底部)
  • 使用时保留开发工具栏app.php(我是否只是web_profiler:config/config_dev.yml?)
  • 在网络路由之外设置 Symfony2 (我认为最好的安全措施?!?)(我应该有一个/var/www/index.php指向的软链接/home/<name>/Symfony2/web/app.php吗?)
  • 现在我在生产版本上,我可以去<host>/demo/welcome/James吗,如果不能,为什么不呢?(我安装了 apache mod_rewrite(我真的很想让这个工作)

(我在学习 django 时遇到了同样的问题,刚开始需要吸收很多信息。)

4

1 回答 1

3
  • 该演示并不打算在生产中运行。但是,如果您希望出于学习目的这样做,只需将路线_demo_demo_secured从移动app/config/routing_dev.ymlapp/config/routing.yml

  • 在生产环境中使用 web profiler 也是不明智的。网站访问者不得访问此类信息。这就是为什么有两个单独的前端控制器(app.phpapp_dev.php)的原因。他们都为不同的目的而设置。

  • 设置 Web 服务器的最佳做法是让 Web 根指向./web.

于 2013-04-20T09:54:13.880 回答