让CodeIgniter的URL更完美
CodeIgniter是一个轻型的PHP框架,老甘介绍我认识的,而她的作者是一位摇滚乐手兼程序员,怎么能不让我欢喜呢?嘿。
CodeIgniter推荐使用search engine友好的URL,如:/post/123 而非传统的 /post.php?id=123,当然也可以使用传统的URL,但是不作修改(或扩展)的CodeIgniter只能够两者选其一,不支持/post /123/?from=google这样的URL,其严重程度是直接报404错误,没有商量的余地。但是实际使用的时候,两者兼备的情况也不少,如果真不 支持这种URL的话,可能大多数人要选择另外的框架咯。
在网上找了下,解决方案还是有的,不过最后在我身上都失败了。最后试了下面这个办法:
一、自定义一个Input类,代码如下,以MY_Input.php为名保存到application/libraries下面。
[php]
class MY_Input extends CI_Input {
function _sanitize_globals()
{
$this->allow_get_array = TRUE;
parent::_sanitize_globals();
}
}
[/php]
二、把$config['uri_protocol'] 的值改为ORIG_PATH_INFO。
好了,现在的CodeIgniter可以兼容两种风格的URL了。。
<EOF>
编程
jeff
1
php
评论(1条)
能具体给解释下吗?谢谢