zend routing只能用小写字母

时间:2011-02-19 16:46:10

标签: php zend-framework zend-route zend-controller-router

我在application.ini中设置路由,所以当我尝试访问/移动时,它会显示cont / move。它的工作原理,但只有当我输入moved所有低位字母时,它才与第一行的设置完全相同。如何使MovedmoVed或任何其他字母组合也有效?我是否需要在Bootstrap中进行更好的控制以及如何控制?

routes.test.route = moved
routes.test.defaults.controller = cont
routes.test.defaults.action = move

2 个答案:

答案 0 :(得分:3)

这不是一个明智的做法。

由于某种原因,

网址区分大小写。您将从搜索引擎中获得重复内容惩罚。用户也会感到困惑。

但是,您可以创建控制器插件来实现此目的:

public function preDispatch()
{
    $this->getRequest()->setControllerName(
        strtolower($this->getRequest()->getControllerName());
    )->setDispatched(false);
}

答案 1 :(得分:2)

我在谷歌搜索了几分钟,这个页面(http://joshribakoff.com/?p=29)涵盖了一个不错的补丁。此补丁会覆盖请求对象,而不是调度程序或路由器。