urlpath中的点是什么意思?

在一个关于jQuery Ajax问题的问题中 ,提问者试图使用a . 在相对URL的开头。 我build议他把它删除,但是不知道那里实际上是一个点。

他的相对URL如下所示:

./delete-misc/test-ajax-code.php

我尝试在RFC中查找,但没有成功。 我知道点在命令行(Linux或Win)中的作用,它表示当前目录。

我想知道:这是如何在互联网上工作的url? 它有什么最佳实践用途? 详细的解释是最受欢迎的。

path段. 通常用于相对path引用的开始处,并在参考parsing期间被移除,即将相对URI引用parsing为绝对URI的过程:

path段“ . ”和“ .. ”(也称为点段)在path名称层次结构中为相对引用定义。 它们的目的是在相对path引用( 4.2节 )的开始处使用,以表示名称层次树内的相对位置。 这与它们在一些操作系统的文件目录结构中的作用类似,分别表示当前目录和父目录。 但是,与文件系统不同,这些点段只能在URIpath层次结构中parsing,并作为parsing过程的一部分被删除(见第5.2节 )。

删除点段algorithm ,描述如何在特定的基本path上下文中解释这些点段。

在你的情况下./delete-misc/test-ajax-code.phpdelete-misc/test-ajax-code.php是等价的。 但有些情况下,相对path可能会被误解为一个绝对的URI,例如:search:foo的第一个path段中search:foo./search:foo不同,因为前者是绝对URI,而后者是相对URIpath。

URL前面的./等同于当前path。 所以./delete-misc/test-ajax-code.phpdelete-misc/text-ajax-code.php都是相对path。 在你发布的答案中,你只是要求删除点,所以/delete-misc/test-ajax-code.php的path将被转换为绝对path而不是相对path。

编辑:另外一件事 – . 是当前目录, ..是父目录。 由于phihag评论,这些真的应该避免和防止在代码中。 目录遍历可以用于邪恶。