如何在CodeIgniter中禁用自定义URL?

时间:2012-04-18 22:14:58

标签: php codeigniter routing codeigniter-2

我讨厌codeigniter自定义网址,它位于:domain.com/controller/action/id

我怎样才能像普通网站一样:domain.com/controller.php

任何人都知道如何禁用它?

(使用最新的codeigniter)

4 个答案:

答案 0 :(得分:3)

如果你讨厌它,你可能还没准备好跳进像codeigniter这样的框架。像网址一样休息是一个很大的功能,所以网址有一些实际意义,而不仅仅是指针。如果你习惯于example.com/person.php?id=123&action=seeprofile而不是example.com./person/profile/123,那就没关系,但你怎么能看不到它的美丽呢?你应该看看一些专家解释为什么你应该这样做,以及为什么其他人都这样做。

编辑: 您应该查看这些文档的页面,这样您就可以理解这个伟大功能的整洁。

http://codeigniter.com/user_guide/general/controllers.html#passinguri http://codeigniter.com/user_guide/general/routing.html http://codeigniter.com/user_guide/libraries/uri.html

答案 1 :(得分:1)

来自CI文档的

http://codeigniter.com/user_guide/general/urls.html

添加网址后缀

在config / config.php文件中,您可以指定一个后缀,该后缀将添加到CodeIgniter生成的所有URL中。例如,如果URL是这样的:

example.com/index.php/products/view/shoes 您可以选择添加后缀,例如.html,使页面看起来是某种类型:

example.com/index.php/products/view/shoes.html

答案 2 :(得分:1)

我不明白你想要实现的目标。你可能会说你“讨厌自定义网址”,但这实际上是框架工作方式的基本部分。

如果你真的不喜欢它们,那么你需要调查routing,以及它在codeigniter上下文中的工作原理。使用控制器方法id模式的有一个非常非常好的论据,我也支持,但这不是它。国际化,只有一件事。

无论如何,将file.php或my-pro-script.php添加到域名与我们这个网站的用户完全无关,他们对.php扩展名不太在意。你想要这样做的理由是什么?

答案 3 :(得分:0)

config.php文件中有 enable_query_strings 选项, 也许这就是你想要的...... 您可以通过将此选项设置为TRUE来启用基于标准查询字符串的URL。