我安装了Symfony2,并且是一个主要工作的站点,唯一的问题是我不知道如何设置默认路由。目前,我使用以下URL访问我的索引和其他路由:
www.example.com/app_dev.php/index
www.example.com/app_dev.php/example_route
我想将www.example.com默认为索引路由,因此我可以使用以下网址获得相同的结果:
www.example.com
www.example.com/example_route
我正在运行lighttpd作为我的网络服务器。如何配置lighttpd / Symfony2来执行此操作?
答案 0 :(得分:14)
只需创建一个映射到/
模式的路线:
# app/config/routing.yml
homepage:
pattern: /
defaults: { _controller: AcmeHomeBundle:home:show }
这将路由到您指定的任何控制器。
答案 1 :(得分:0)
答案 2 :(得分:0)
我使用下面的代码来设置主页路由。它工作正常
Symfony版本:Symfony 3.2.8
homepage:
path: /
defaults: { _controller: AppBundle:Home:index}
答案 3 :(得分:-1)
我通过从routing_dev.yml中删除以下内容解决了这个问题
_welcome:
pattern: /
defaults: { _controller: AcmeDemoBundle:Welcome:index }
假设您已在routing.yml文件中设置了默认/路由,或者通过在控制器中定义路由,例如:
/**
* @Route("/")
* @Template()
*/
public function indexAction()
{
return array('name' => '1');
}
答案 4 :(得分:-1)
对我Symfony 4.1.x
编辑文件
# app/config/routes.yaml
index:
path: /
controller: App\Controller\YourIndexController::yourIndexFunction
有
App\Controller
是您在namespace
类的开头声明的Controller
,其后是要路由到的类名和方法名。
答案 5 :(得分:-2)
ManseUK给出的答案非常有用,但我没有详细说明
1)
# app/config/routing.yml
homepage:
pattern: /
defaults: { _controller: AcmeHomeBundle:home:show }
2)将app_dev.php重命名为index.php,这将自动路由到主页