超链接谁的路径只是正斜杠(/)

时间:2011-09-30 15:47:25

标签: html hyperlink

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

以下代码在每个页面上指定公司徽标:

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

正如您所看到的,href标记的a仅包含 正斜杠/作为其路径。

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

我想知道它是怎么做到的?看作域的默认页面是由服务器配置文件控制的,这是一个链接到默认页面指定为的快捷方式吗?

我以前从未见过这件事,我似乎无法找到任何有关它的文件。感谢您提供的任何信息。

2 个答案:

答案 0 :(得分:9)

该链接将您带到公共根目录,然后默认文件启动。

它是绝对路径的相对等价物,例如http://stackoverflow.com/

  

在Linux和其他类Unix操作系统中,正斜杠用于表示根目录,该目录位于目录层次结构的顶部,包含系统上的所有其他目录和文件。因此,每个绝对路径(相对于根目录的文件系统对象(例如,文件或目录)的地址)以正斜杠开头。

     

URL(通用资源定位器)中也使用正斜杠来分隔目录和文件,因为URL基于UNIX目录结构。与UNIX使用的主要区别在于它们以方案(例如,http或ftp)开头,而不是以正斜杠表示的根目录,并且该方案直接遵循冒号的序列和两个连续的正斜杠。表示URL的目录和文件部分的开头。

via:http://www.linfo.org/forward_slash.html

答案 1 :(得分:5)

这是relative URI。由于它只包含路径部分,因此它维护当前的方案,主机,端口等,因此将您带到http://www.example.com/(假设您在http://www.example.com/foo/bar?baz=x#123上)

然后,浏览器会使用默认端口(80)上的/www.example.com请求http

然后服务器将设备发送回去。它是如何做到这取决于服务器是什么以及它是如何配置的。

由于你提到index.php,会有一些东西告诉服务器使用它。

如果我们使用Apache作为示例,那将是DirectoryIndex directive和告诉Apache how to handle PHP programmes的组合。