我们的办公室刚刚得到了这个有很多经验的新人,并坚持要求我们停止使用以下绝对路径:
http://somesite.com/subdir1/images/filename.ext
指向我们图像的路径时,如果它位于调用它的文件旁边,则表示我们刚刚使用过:
./subdir1/images/filename.ext
但之前我们使用绝对路径的原因是为了防止在我们将另一个页面放在另一个目录中时出现死链接,而不是明确地键入
"../../"
或"./"
< BR />
递归...
那么使用它们真的有区别吗?
他说每个绝对的网址都是对服务器的单独请求..但是我从那时起就一直在使用这种方法,我可以放心地确保预期的快速响应时间,任何人都可以启发我吗?
答案 0 :(得分:3)
所有内容都是对服务器的单独http请求。相对或绝对没关系。
当然,如果绝对网址指向同一网站但位于不同的主机上,则此可能会加速,因为它会破坏2 concurrent http requests limit。例如,您的网站位于 www.example.com ,您可以通过 static.example.com 提供所有图片。
另一种防止您提到的链接问题的方法是通过虚拟URL:/ images / foo.png
答案 1 :(得分:2)
使用相对路径,您可以将整个Web应用程序移动到另一个域和/或文件夹,而无需修复每个路径。
答案 2 :(得分:1)
相对路径可以缩小HTML,从而减少带宽消耗。
相对路径是上下文友好的,这意味着“site.com”和“www.site.com”同样可以正常工作,无需从“site.com”重定向到“www.site.com”。< / p>
答案 3 :(得分:0)
绝对路径将是root绝对和多功能的,以后您可以将文件移动到另一个目录,链接仍然可以工作。如果您更改了域名,没问题,链接仍然有用。
/foo/monkey-wrench.song
相对路径将相对于您所在的页面,如果您将文件移动到其当前目录之外,则会中断。
../foo/everlong.song
对域部分进行拍打将使其成为绝对URL。
http://example.com/foo/this-is-a-call.song
如果你有一个刮刀,然后他们就可以链接回你自己的网站,那么当你检查推荐人日志时,你就知道该向谁发送这个取消通知。
两者之间的区别在于你以后想要为自己创造多少繁忙的工作。
答案 4 :(得分:0)
我更喜欢手动解析Request.RawURL以避免与网址冲突
答案 5 :(得分:0)
可能会有一些货物崇拜的事情发生在那里。
在我工作的地方,服务器技术人员告诉我们绝对URL 导致延迟,因为涉及负载平衡。绝对URL将返回到交换机并被中继到四个服务器之一,而本地URL则不会。
所以在他过去的工作场所可能也是如此。在您的工作场所是否真实是为了让您找到答案。
但如果他无法解释他为什么这样说,那么除非另有证明,否则这是民间信仰。