app_dev.php运行页面,但app.php发送404


app_dev.php runs the page, but app.php sends 404

我刚开始使用Symfony2。我在AppBundle中创建了一个称为PageController.php的简单控制器,它有一个名为homeAction(Request $request)的操作。一切都很好。之后,我运行了一个命令

$ php app/console assets:install

并运行服务器,一切正常。如果我运行localhost:8000/page/home(就像我在@Route中设置的那样(,页面会按照我的预期显示

现在,如果我运行localhost:8000/app.php/page/home,我会得到

找不到404页

错误,而如果我再次使用localhost:8000/app_dev.php/page/home,运行它,我会得到我想要的。

我尝试了两种方法来解决这个问题(我在StackOverflow上找到了这两种方法(,但都不起作用:

  1. 我试着运行另一个命令

    $ php app/console assetic:dump --env=prod
    
  2. 我尝试进入.htaccess文件夹,将app.php的所有部分更改为app_dev.php。但没有成功,所以我恢复到app.php

在开发中开发(即app_dev.php(时,注释中的更改会触发内部缓存的更新,因此无需执行操作。

反过来,当在生产环境(即app.php(中测试它时,您可能希望首先清除生产缓存,以便更新注释缓存(以及原则、编译的分支模板等(。

您可以通过执行php app/console cache:clear --env=prod或短php app/console c:c -e prod来实现这一点。