【问题标题】:hyperlink who's path is only a forward slash (/)谁的路径只是一个正斜杠 (/) 的超链接
【发布时间】:2011-09-30 15:47:24
【问题描述】:

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

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

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

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

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

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

我以前从未见过这样做,而且我似乎找不到任何有关它的文档。感谢您提供任何信息。

【问题讨论】:

    标签: html hyperlink


    【解决方案1】:

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

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

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

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

    通过:http://www.linfo.org/forward_slash.html

    【讨论】:

    • 非常感谢先生。很好的答案。我能够从逻辑上推断出同样多的东西,但是有一些文档和其他人的想法来支持我的逻辑总是很好的!
    【解决方案2】:

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

    然后浏览器在默认端口 (80) 上使用 httpwww.example.com 请求 /

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

    既然你提到了index.php,就会有一些东西告诉服务器使用它。

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

    【讨论】:

    • 所以,假设我被要求更改 DirectoryIndex 指令(在这种情况下我有);我假设此链接将连接到 .htaccess 文件中指定的任何文件?
    • 假设您使用 .htaccess 文件来执行此操作,并且系统支持 .htaccess 并已打开对它们的支持 - 是的。
    猜你喜欢
    • 2012-11-16
    • 1970-01-01
    • 2010-10-31
    • 1970-01-01
    • 2020-11-20
    • 2017-03-16
    • 1970-01-01
    • 2012-08-30
    • 1970-01-01
    相关资源
    最近更新 更多