相对和绝对地址

时间:2011-08-24 22:20:34

标签: html url mod-rewrite href

我的问题是关于相对和绝对地址。

我多年来建立了一个框架,我的所有php网站都建立在这个框架上。

每个页面都加载在顶级“index.php”文件中。 这很酷,因为我从不挣扎于资源之路。系统的每个单一级别的每个资源都从顶级索引文件中引用,因此路径始终类似:

(img src =“images / sprites / xxxxx.jpg”) 来自系统中的每一页。

但是现在我通过引入mod_rewrite来破坏它。 mod重写似乎混淆了我一直在使用的路径系统。所以现在是我更新路径的时候了。样式表和图像不再加载。

我该如何解决这个问题?相对路径的加载速度是否比绝对快? 是不是有一些方法在PHP中找到服务器文件系统的根分配给$ var然后将$ var添加到图像路径?这比仅仅参考我的图像更快吗?样式表为“http://site.com/images/xxxx.jpg”?

我现在有很多东西需要学习。请输入任何信息

3 个答案:

答案 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 (领先斜杠)路径是一个更简单的解决方案。