wx_s5pKlKNr 发表于 2016-2-1 10:23:35

CodeIgniter里绝对路径相对路径的困惑

本帖最后由 Closer 于 2016-2-1 10:46 编辑

CodeIgniter的MVC功能非常好,但是好像在绝对路径、相对路径这里有一点点小问题。以下情况不考虑uri路由。
假设我有一个页面1是 http://www.site.com/user/index,用来展示当前用户信息的页面。
同时, 页面2:http://www.site.com/user/index/,也是可以访问的。
注意第二个链接后面加上了一个斜杠,导致了浏览器认为两个页面在不同目录(尽管两个页面是一样的内容)。

问题出现在,假设在页面内有一个相对连接,<a href='order'></a>。当用户访问
http://www.site.com/user/index时,能够被正确引导至http://www.site.com/user/order。
但是当用户访问http://www.site.com/user/index/时,则会被引导至http://www.site.com/user/index/order,称为了index下级的目录,这是不合理的。

我知道可以用base_url生成绝对路径,但这并不是问题的最终解决方案,我想要做到的是各个页面自适应。
请问大家是怎么处理这个路径问题的?

Hex 发表于 2016-2-1 10:44:33

这个 CI 已经有解决方案了。
用 site_url() 和 base_url() 函数,访问控制器的 URL 用 site_url(),访问图片 CSS JS 用 base_url()。
函数的具体用法参见手册。
页: [1]
查看完整版本: CodeIgniter里绝对路径相对路径的困惑