如何更改目录但保持与简单HTML相同的页面URL?

时间:2017-04-19 23:59:14

标签: html directory href

在一个非常简单的HTML网站中,如何实现这一目标:

On a page Mysite.com/ABC/mypage.html

Action ; visitor clic on a link, goes to

Mysite.com/XYZ/mypage.html

所以使用像<a href=""></a>这样的简单文本链接,只更改实际页面的上一个目录?

可以轻松解决方便的语言切换

3 个答案:

答案 0 :(得分:0)

你可以这样做:

<a href="../XYZ/mypage.html">

您可以将文件名更改为index.html,或者在Web浏览器中为默认页面名称设置的任何其他内容,您只需执行以下操作:

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

答案 1 :(得分:0)

这是你在找什么?

<a href="/XYZ/mypage.html">Text</a>

这是因为以正斜杠(/)开头的URL被称为绝对路径&#39;并且引用根,即相对于mysite.com

或者,如果您想影响 的下一个目录,您可以使用以下内容:

<a href="../XYZ/mypage.html">Text</a>

这是因为..指的是父目录。因此,如果您在example.com/folder1/ABC/mypage.html上有一个页面,并且您希望该页面链接到example.com/newpages/XYZ/mypage.html,则可以执行以下操作:

<a href="../../newpages/XYZ/mypage.html">Text</a>

网上有很多示例和教程,例如https://www.w3.org/TR/WD-html40-970917/htmlweb.html

答案 2 :(得分:0)

仅限HTML,我相信Kamyar Infinity关于重写规则的评论是您最好的选择。但是,如果您正在考虑使用PHP,这可能会成功。它会将当前文件名打印到所需目录的后面:

 <a href="/xzy/<?php echo basename($_SERVER['PHP_SELF']); ?>">text</a>

或者我们可以使用javascript来操作此链接的href(根本不使用PHP):

<a href="/xyz/">text</a>

<script>
  //Get current Pagename
  var currentPage = location.pathname.substring(location.pathname.lastIndexOf("/") + 1);

  //Change href for link
  document.querySelector('a[href="/xyz/"]').setAttribute('href', '/xyz/'+ currentPage);
</script>