【问题标题】:What does "/./" mean in href link?href链接中的“/./”是什么意思?
【发布时间】:2013-11-18 00:39:22
【问题描述】:

最近我在阅读一些网页,发现有很多用法,例如: href="/./foo/bar.php"

这不是和href="/foo/bar.php"一样吗?或者这是我不知道这两种方式之间的区别吗?

【问题讨论】:

  • 你能举一个你发现这个页面的例子吗?
  • 是的,这是一样的。 URI 的工作原理基本上与目录树相同。应避免此类构造,并显示草率的 Web 应用程序 psorgramming。
  • 这很可能是由不了解如何进行目录导航的人或有错误规则的编辑器完成的...您可能已经知道./ 是当前目录,../ 是上一个目录

标签: php html url path href


【解决方案1】:

相对 URL /./foo/bar.php 与相对 URL /foo/bar.php 不同。前者以/.开头。

不过,它们具有相同的效果。在处理 URL 时,将相对 URL 解析为绝对 URL,在此过程中,如果相对 URL 以 /./ 开头,则将其替换为 /。参考:STD 66,条款Remove Dot Segments。 (这样的引用被解析为相对于服务器根目录,基本上类似于http://www.example.com/foo/bar.php。)

所以这两个相对 URL总是解析为同一个绝对 URL。一般没有理由使用较长的 URL,这看起来更复杂和令人困惑。

请注意,这与文件夹或文件完全无关。它只是基于 URL 标准的字符串操作。 URL 是否映射到文件夹和文件由服务器自行决定,原则上对其外部的世界是不可见的。

【讨论】:

    猜你喜欢
    • 2020-05-08
    • 1970-01-01
    • 2012-05-07
    • 1970-01-01
    • 2014-01-23
    • 2011-03-10
    • 2014-07-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多