Как Zend анализирует URL-адрес в переднем контроллере с помощью mod_rewrite?

Я не могу понять, как Zend Framework контролирует маршруты. Я на самом деле пытаюсь создать свой собственный класс контроллера / маршрута, написал тот же код, что и Zend, reccomends для .htaccess, чтобы переписать на index.php, расположенный в корне сайта:

RewriteEngine On RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] 

Линия, которую я не понимаю, является последней. У него нет групп захвата и переменных. В index.php я ничего не могу поймать в $ _GET, который пуст. Единственный способ, которым это будет работать, это:

 RewriteRule ^(.*)$ index.php?uri=$1 [NC,L] 

а затем разобрать $ _GET ['uri'], который для меня был бы в форме «controller / action / param1 / param1value».

Но было бы неплохо обойти это и не использовать переменную «uri». В проекте Zend это работает. Может ли кто-нибудь объяснить мне, как Zend анализирует URL с таким переписанием?