【问题标题】:CodeIgniter routes map all URI segments to one controller/methodCodeIgniter 路由将所有 URI 段映射到一个控制器/方法
【发布时间】:2012-04-08 04:50:30
【问题描述】:

我有一个带有一个控制器“主要”的 CI 应用程序。

我想将所有请求映射到方法 primary->index() 并将段作为参数传递给 index 方法。

我尝试在 config/routes.php 中设置路由: $route['(:any)'] = "primary/index/$1";

但由于某种原因,这不起作用 例如:(我想要) www.example.com/test/delta ---(路由)---> www.example.com/primary/index/test/deta

有人知道我错过了什么吗?

想通了! $route['(.*)'] = 'primary/index/$1'; 我也忘了用 .htaccess 删除 index.php

【问题讨论】:

  • 您知道 codeigniter 的工作原理是通过 index.php 路由所有请求,对吗?从此,您可以在索引脚本中进行预处理,而无需创建另一个级别的冗余间接

标签: php codeigniter url-routing


【解决方案1】:

试试这个

$route['(.*)'] = "primary/$1";

【讨论】:

  • 我试过了,效果很好。原来我只是忘了使用 .htaccess 从 url 中删除 'index.php' ......哎呀。
  • 虽然它看起来不正确,但它会输出“www.example.com/test”,其中“test”是您的控制器方法
  • 其实我只是用 $route['(.*)'] = 'primary/index/$1';
  • 我在考虑“/index/”的事情......我认为它是“index.php 同时考虑.htaccess”所以我只是发布了控制器部分。
【解决方案2】:

也可以通过控制器上的remap 来实现

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-10
    • 1970-01-01
    • 1970-01-01
    • 2011-09-02
    • 1970-01-01
    • 2017-07-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多