在symfony中重定向
我试图了解这两种在symfony中重定向的方法之间是否有任何区别 1通过不带自定义控制器的配置 如前所述 2通过自定义控制器中的redirect()方法 如前所述 当我谈到差异时,我指的是性能、易用性和可维护性在symfony中重定向,symfony,Symfony,我试图了解这两种在symfony中重定向的方法之间是否有任何区别 1通过不带自定义控制器的配置 如前所述 2通过自定义控制器中的redirect()方法 如前所述 当我谈到差异时,我指的是性能、易用性和可维护性 谢谢。在第一种情况下,您不需要创建控制器。您可以从配置管理一切,这是一种方便。 重定向将由执行。就性能而言,这两种方法没有区别 如果您必须做的是重定向,那么使用第一种方法。问题是您的第一个解决方案将重定向,而不使用特定的控制器,只使用配置,而您的第二个解决方案将执行您的操作,然后重定向。
谢谢。在第一种情况下,您不需要创建控制器。您可以从配置管理一切,这是一种方便。 重定向将由执行。就性能而言,这两种方法没有区别
如果您必须做的是重定向,那么使用第一种方法。问题是您的第一个解决方案将重定向,而不使用特定的控制器,只使用配置,而您的第二个解决方案将执行您的操作,然后重定向。这是两个不同的用例,它们并不相同。感谢您关于性能的说明。在我们的例子中,我们已经在一个自定义控制器中发生了几个重定向,因此我们将继续在那里添加它们,以便将它们放在一起。但是如果我需要从头开始实现这些,我可能会遵循第一种方法。
# app/config/routing.yml
# ...
codes:
path: /codes # redirect /codes to /code
defaults:
_controller: FrameworkBundle:Redirect:urlRedirect
path: /code
permanent: true
class RedirectsController extends Controller {
/**
* @Route("/codes")
*/
public function codesAction() {
return $this->redirect('/code', 301); // redirect /codes to /code
}
}