这可能是一个愚蠢的问题,我自己也有答案,但我想知道我做错了什么。我有一个网站,我们称之为www.mysite.com
。在这个网站中,我有一些常见问题解答,但是建立网站的人将FAQ页面保存在名为“FAQs”的网站上的目录下。
例如,FAQ页面位于:
www.mysite.com/pages/en/faqs/faq-page1.html
。
请注意pages/en/
目录。理想情况下,我希望所有页面都保存在www.mysite.com/index.html
等之下,但我无法改变它。
无论如何,当我在这些常见问题解答页面中的任何一个时,我尝试链接回来说出主页index.html
,导航将不会转到该页面。例如,当我上场时:
www.mysite.com/pages/en/faqs/faq-page1.html
我尝试链接回主页
www.mysite.com/pages/en/index.html
(这是保存索引页面的地方)导航将无法正常工作。相反,它会尝试转到www.mysite.com/pages/en/faqs/index.html
。
现在我假设发生这种情况是因为我在“faq”目录中,但是如何在链接时返回到根目录?链接的代码只是<a href="index.html">Home</a>
。我当然可以输入完整的链接www.mysite.com/pages/en/index.html
,这可以解决这个问题,但还有另一种解决方法吗?很抱歉这么长的帖子我可能能够更好地解释这个但我不能:S
提前致谢。
答案 0 :(得分:41)
您需要提供<a href="../index.html">Home</a>
或者,您可以指定来自您网站根目录的链接
<a href="/pages/en/index.html">Home</a>
..
和.
在文件路径中有特殊含义,..
表示一个目录,.
表示当前目录。
所以<a href="index.html">Home</a>
与<a href="./index.html">Home</a>
答案 1 :(得分:19)
有两种类型的路径:绝对路径和相对路径。对于硬盘中的文件和URL中的目录,这基本相同。
绝对路径以前导斜杠开头。无论您在何处使用它们,它们始终指向相同的位置:
/pages/en/faqs/faq-page1.html
相对路径是其余的(所有不以斜杠开头)。他们指向的位置取决于您使用它们的位置
index.html
是:
/pages/en/faqs/index.html
/pages/en/faqs/faq-page1.html
如果从/pages/index.html
/pages/example.html
还有两个特殊的目录名称:.
和..
:
.
表示“当前目录”..
表示“父目录”您可以使用它们来构建相对路径:
../index.html
调用,则/pages/en/index.html
为/pages/en/faqs/faq-page1.html
如果从../../index.html
/pages/index.html
为/pages/en/faqs/faq-page1.html
一旦熟悉了这些术语,就很容易理解它失败的原因以及解决方法。您有两种选择:
答案 2 :(得分:5)
要上传链接中的目录,请使用..
。这意味着“上一个目录”,因此您的链接将如下所示:
<a href="../index.html">Home</a>