昨天在主机中添加了一个Codeigniter应用,可是发现只能访问到主页,其他的都显示No Find。google下才知道原来godaddy不支持URL路由中的$_SERVER['PATH_INFO']。
关于$_SERVER路由示例url:
http://www.sword88.com/twitter/index.php/home/mb/blog/test?id=1
$_SERVER['PATH_INFO']
$path = $_SERVER['PATH_INFO'];
echo $path;
结果输出为:
/twitter/index.php/home/mb/blog/test
用Rewrite屏蔽掉index.php,通过http://www.sword88.com/twitter/home/mb/blog/test?id=1
$_SERVER['PATH_INFO']便失去了作用。
$_SERVER['REQUEST_URI']
$path = $_SERVER['REQUEST_URI'];
echo $path;
结果输出为:
/twitter/index.php/home/mb/blog/test?id=1
用Rewrite屏蔽掉index.php?,通过http://www.sword88.com/twitter/home/mb/blog/test?id=1
结果输出为:
/twitter/home/mb/blog/test?id=1
现在给出godaddy主机添加CI应用解决方法:
1.设置config.php
$config['index_page'] = "index.php?";
$config['uri_protocol'] = "QUERY_STRING";
这时你就可以通过类似下面的地址访问到你的应用
http://www.yourdomain.com/index.php?controller/action/parameter
但是这样有个缺点,就是CI不在支持GET传递的参数。
更多内容请查看
www.sword88.com