Zend маршрутизация работает только строчными буквами - PullRequest
1 голос
/ 19 февраля 2011

Я устанавливаю маршруты в application.ini, поэтому, когда я пытаюсь получить доступ / переместить, он отображает продолжение / перемещение.Это работает, но только если я наберу moved все строчные буквы точно так же, как в первой строке.Как я могу заставить Moved или moVed или любую другую комбинацию букв также работать?Нужно ли делать это в Bootstrap, чтобы получить более полный контроль и как?

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

Ответы [ 2 ]

3 голосов
/ 20 февраля 2011

Это не мудрый подход.

URL-адреса чувствительны к регистру по какой-то причине.Вы получите дублирующийся контент штраф от поисковых систем.Пользователи тоже будут сбиты с толку.

Однако вы можете создать плагин контроллера для достижения этой цели:

public function preDispatch()
{
    $this->getRequest()->setControllerName(
        strtolower($this->getRequest()->getControllerName());
    )->setDispatched(false);
}
2 голосов
/ 19 февраля 2011

Я искал в Google несколько минут, и эта страница (http://joshribakoff.com/?p=29) содержит хороший патч. Этот патч переопределяет объект запроса, а не диспетчер или маршрутизатор.

...