【问题标题】:Link to index page of website链接到网站的索引页面
【发布时间】:2012-05-20 18:11:43
【问题描述】:

有没有办法在不指定索引页名称或完整网站 URL 的情况下链接到网站的索引页?

我有这个:

<a href="index.htm">Home</a>

但是当我点击链接时,我的地址栏显示:

mydomain.com/index.html

我希望它显示:

mydomain.com

我可以在不将完整 URL (mydomain.com) 放入 href 的情况下执行此操作吗?如果有,怎么做?

对于未来的观众,我还发现 this question 很有帮助。

【问题讨论】:

  • @CommunityDrivenBusiness:我说过我试图避免这种情况。

标签: html hyperlink anchor href


【解决方案1】:

你可以这样做:

<a href="/">Home</a>

任何以斜线开头的href 都是相对于根目录的。

需要注意的是,在浏览器中从本地硬盘查看网页时,会导致链接失效。

【讨论】:

  • 子目录有没有同样简单的方法?例如从mydomain.com/foo/bar.htmlmydomain.com/foo/?
  • 您也可以使用&lt;a href="/#foo"&gt;Link Text&lt;/a&gt; 链接到页面的特定部分。
【解决方案2】:

我知道这篇文章很旧并且有答案。但这是我的贡献,它也支持不完全在根目录中的索引

前往

mydomain.com/index.html

地址栏中不显示 index.html

<a href="/">Home</a>

无论您的文件保存到哪个目录,这将始终指向 mydomain.com。

要指向目录中的索引,请使用:

<a href="./">Home</a>

这将指向 mydomain.com/subdir for mydomain.com/subdir/index.html,而接受的答案将始终指向 mydomain.com(这并不总是所需的操作)

【讨论】:

  • 在浏览器中从本地硬盘查看网页时,这将导致链接在大多数浏览器中显示文件夹。
  • 这很有趣。但我猜这是因为通过 file:/// 打开 HTML 文件不会自动为当前目录加载 index.*。
  • 我不知道为什么我的有问题。查看网页的另一部分后,当我单击主页时,它不会转到 index.html 部分。我试过:homehome,还有home .没有任何效果。但是我注意到,当我单击主页按钮时,链接在我单击的最后一个按钮中添加了一个“#”。那是什么?
  • @AgungSudrajatSupriatna 这篇文章很旧,您的评论与我的回答并没有真正的关系。获得 # 可能意味着很多事情。
【解决方案3】:

创建一个“.htaccess”文件并上传到您的主机公用文件夹

<IfModule mod_rewrite.c> 
RewriteEngine On

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/ 
RewriteRule ^index\.html$ http://www.yourwebsite.com.ph/ [R=301,L]
RewriteCond %{THE_REQUEST} \.html 
RewriteRule ^(.*)\.html$ /$1 [R=301,L]
</IfModule>

【讨论】:

  • 这是做什么的......现在我的网站完全被吓坏了。猜猜它适合我将我不理解的东西粘贴到我的 .htaccess 文件中。但是来吧。即使删除了有问题的代码,它仍然一团糟。我尝试访问的每个页面都删除了 .html,我无法访问任何内容。
  • 好的,清除所有缓存后就好了。我离开“你的网站”可能没有帮助,哈哈。但我太害怕再试一次。现在我不能改变我的反对票。对不起。
猜你喜欢
  • 2023-03-20
  • 1970-01-01
  • 1970-01-01
  • 2014-05-25
  • 1970-01-01
  • 1970-01-01
  • 2010-12-25
  • 2012-05-15
  • 2023-03-24
相关资源
最近更新 更多