Symfony 2不区分大小写的路由


Symfony 2 case-insensitive routing

我目前正在使用Symfony 2开发一个应用程序,希望我的路由不区分大小写。

我已经包含了一个示例路线。这只匹配/some_url/。我希望这个能与那个图案的任何变化相匹配。例如/Some_url/、/Some_url/等…

some_route:
    pattern:  /some_url/
    defaults: { _controller: Bundle:Controller:Action }

有人知道我怎样才能做到这一点吗?

试试这个:

some_route:
    pattern:   /{some_url}/
    defaults:  { _controller: Bundle:Controller:Action }
    requirements:
        some_url:  (?i:some_url)

但正如评论中已经提到的,这是一种糟糕的做法

尝试这个

    some_route:
        pattern:  /some_url/
        defaults: { _controller: Bundle:Controller:Action }
    _Some_route:
        pattern:  /Some_url/
        defaults: { _controller: FrameworkBundle:Redirect:redirect, route: some_route }
    __SOME_route:
        pattern:  /SOME_URL/
        defaults: { _controller: FrameworkBundle:Redirect:redirect, route: some_route }

您可以为区分大小写的不同数学创建一些路由,并在默认属性中使用此指令在某些路由上重定向

defaults: { _controller: FrameworkBundle:Redirect:redirect, route: some_route }

我希望这能有所帮助!…