漂亮的Zend框架网址

时间:2012-02-25 22:19:19

标签: zend-framework url

我想让我的网址像这样:

  • /index
  • /contact
  • /articles
  • /articles/selection
  • ...

而不是:

  • /index/index
  • /index/contact
  • /articles/index
  • /articles/selection
  • ...

基本上我只有一个控制器。哪种解决方案最适合执行此操作? (控制器和重定向,ZF路由,网址重写,其他什么?)

2 个答案:

答案 0 :(得分:0)

查看文档。您想要的行为在默认路由器中配置为默认行为: http://framework.zend.com/manual/en/zend.controller.router.html

如果第一个参数不映射模块名称,它将搜索控制器,如果这也失败,它将在您的IndexController中查找操作。 您是否尝试过调用您想要的网址? 如果您导航到/index会怎样?应该像/index/index

一样

答案 1 :(得分:-1)

使用zend routing:

$router = Zend_Controller_Front::getInstance()->getRouter();
    $route_index = new Zend_Controller_Router_Route(':action', array(
        'module'     => 'default',
        'controller' => 'index',
        'action'     => 'index'
    ));
    $router->addRoute('route_index', $route_index );

$route_articles = new Zend_Controller_Router_Route('articles/:action', array(
        'module'     => 'default',
        'controller' => 'articles',
        'action'     => 'index'
    ));
    $router->addRoute('route_articles ', $route_articles );