仅含正斜杠(/)路径的超链接是什么?

5

我被要求对一个朋友的公司网站进行一些更改。每个页面都使用PHP插入文件来作为页眉,这很有用,因为每个页面上的导航等都是相同的。

以下代码指定了每个页面上的公司标志:

<div id="logo"> 
    <a href="/"></a> 
</div>

如您所见,a 标签的 href 只包含一个正斜杠 / 作为其路径。

链接可正常工作,并连接到 index.php 页面。

我想知道它是如何做到的?由于域的默认页面受服务器配置文件控制,这是否是链接到任何默认页面指定的快捷方式?

我以前从未见过这样的操作,也似乎找不到任何相关文档。感谢您能提供的任何信息。

2个回答

9
那个链接将带您进入公共根目录,然后默认文件会启动。
这是相对路径的等价物,例如 http://stackoverflow.com/ 在Linux和其他类Unix操作系统中,正斜杠用于表示根目录。根目录是目录层次结构顶部的目录,包含系统上的所有其他目录和文件。因此,每个绝对路径(即相对于根目录的文件系统对象(例如文件或目录)的地址)都以正斜杠开头。
正斜杠还用于URL(统一资源定位符)中,用于分隔目录和文件,因为URL基于UNIX目录结构。与UNIX用法的主要区别是它们以一个方案(例如 http 或 ftp)开头,而不是由正斜杠表示的根目录,并且该方案直接后跟一个冒号和两个连续的正斜杠序列,以指示URL的目录和文件部分的开始。
来源:http://www.linfo.org/forward_slash.html

非常感谢您先生。非常好的答案。我能够逻辑推断出这么多,但是有一些文档和同行的思维来支持我的逻辑总是很好的! - stefmikhail

6
这是一个相对URI。由于它仅由路径部分组成,因此保留当前方案、主机、端口等信息,因此将您带到http://www.example.com/(假设您在http://www.example.com/foo/bar?baz=x#123上)。
然后,浏览器使用默认端口(80)上的HTTP从www.example.com请求/
然后服务器决定发送什么。这取决于服务器是什么以及如何配置。
由于提到了index.php,因此会有一些东西告诉服务器使用它。
如果我们以Apache为例,那么这将是DirectoryIndex指令和某些内容的组合,用于告诉Apache 如何处理PHP程序

那么,假设我被要求更改DirectoryIndex指令(在这种情况下是这样);我假设这个链接将连接到在.htaccess文件中指定的任何文件? - stefmikhail
假设您使用.htaccess文件来执行此操作,并且系统支持.htaccess并已打开对其的支持 - 是的。 - Quentin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接