Точка в маршруте Кохана 3.2

Я создаю динамическую карту сайта для своего веб-сайта Kohana 3.2 и столкнулся со следующей ошибкой. Маршрут не работает, если я использую точку "." в этом. Вот так (http://localhost/sitemap.xml):

Route::set('sitemap', 'sitemap.xml')
->defaults(array(
'controller' => 'static',
'action' => 'sitemap'));

В этом случае все работает нормально (http://localhost/sitemap):

Route::set('sitemap', 'sitemap')
->defaults(array(
'controller' => 'static',
'action' => 'sitemap'));

Как я могу это решить?


person Alex Mukho    schedule 18.12.2012    source источник
comment
Привет, мой ответ сработал для тебя?   -  person Jason J. Nathan    schedule 30.06.2013


Ответы (1)


Это сделает то, что вы просили

Route::set('sitemap', 'sitemap.<format>', array( 'format' => 'xml'))
  ->defaults(array(
     'controller' => 'static',
     'action' => 'sitemap',
  ));

Этот маршрут позволит вам использовать другие «имена файлов» в качестве действия, просто разделяя поддерживаемые форматы с помощью канала. например 'xml|rss|json' и т.д.

Route::set('static', '<action>.<format>', array( 'format' => 'xml'))
  ->defaults(array(
     'controller' => 'static',
     'action' => 'sitemap',
  ));
person Jason J. Nathan    schedule 19.02.2013