0
  1. <file_name>

    <a href="file.html">link</a>
    
  2. <slash><file_name>

    <a href="/file.html">link</a>
    
  3. <dot+slash><file_name>

    <a href="./file.html">link</a>
    

推荐/首选哪些?
它们中的任何一个会影响检索速度吗?
使用它们中的任何一个时有什么优点和缺点?

skorks在这里有一篇关于 URL 的广泛文章:每个开发人员应该知道的关于 URL的知识,但它没有回答我的任何问题。

4

4 回答 4

1

没有具体的建议。

检索速度与 URI 的构造方式无关。

您唯一需要考虑的是链接页面和您要链接到的页面是否是一组页面的一部分 - 如果您将它们一起移动,那么如果您的链接采用样式 2,它们就会中断。如果file.html将始终位于站点的根目录上,则移动此文件将没有任何区别。

我看不出风格3的意义。

于 2012-05-12T17:45:33.770 回答
1

数字 2 与其他数字不同,因为它解析为网站的根目录,而不是当前文件夹。

这个问题对我来说听起来像是微优化,答案很简单:当遇到链接时,浏览器会解析路径,使用当前 URL 或<base href="..." />提供的 URL。因此绝对没有区别。

于 2012-05-12T17:45:45.767 回答
1

选项 1 和 3 产生完全相同的 HTTP GET 请求。选项 2 不同,因为以 开头的路径/将尝试从根目录而不是当前路径检索文件。

于 2012-05-12T17:48:59.040 回答
1

在速度/检索方面,它们之间没有合理的区别。
- 第一种和第三种情况相同:名为 file.html 的资源位于当前文件的同一目录中。
- 在第二个选项中,“/file.html”表示文件位于应用程序的 webroot 中。

这里解释了 w3school

于 2012-05-12T17:52:40.787 回答