我的问题是关于相对和绝对地址。
我多年来建立了一个框架,我的所有php网站都建立在这个框架上。
每个页面都加载在顶级“index.php”文件中。 这很酷,因为我从不挣扎于资源之路。系统的每个单一级别的每个资源都从顶级索引文件中引用,因此路径始终类似:
即(img src =“images / sprites / xxxxx.jpg”) 来自系统中的每一页。
但是现在我通过引入mod_rewrite来破坏它。 mod重写似乎混淆了我一直在使用的路径系统。所以现在是我更新路径的时候了。样式表和图像不再加载。
我该如何解决这个问题?相对路径的加载速度是否比绝对快? 是不是有一些方法在PHP中找到服务器文件系统的根分配给$ var然后将$ var添加到图像路径?这比仅仅参考我的图像更快吗?样式表为“http://site.com/images/xxxx.jpg”?
我现在有很多东西需要学习。请输入任何信息
答案 0 :(得分:1)
我该如何解决这个问题?
使用以/
开头的URI,使它们相对于当前域的根目录(保持相同的协议和端口)。
相对路径的加载速度是否比绝对快?
它们更短,所以它们节省了几个字节,所以技术上 - 是的。这不是一个重要的节省。
在PHP中找不到服务器文件系统的根目录,并将其分配给$ var然后将$ var添加到图像路径中?
是的,但上述技术更简单。
答案 1 :(得分:0)
只需在/
目录
images
即可
img src="/images/sprites/xxxxx.jpg"
它与:
相同http://site.com/images/sprites/xxxxx.jpg
答案 2 :(得分:0)
$_SERVER["DOCUMENT_ROOT"]
会告诉您所要求的内容:
<?php $root = $_SERVER["DOCUMENT_ROOT"]; ?>
但我同意其他海报, root relative (领先斜杠)路径是一个更简单的解决方案。