为什么这被解释为绝对网址?

时间:2015-10-18 15:51:09

标签: html url

我想在反向代理后面隐藏我的gitweb实例。所以我将我的基本网址设置为/gitweb,但有些网址仍然存在。

在调试问题时,我发现以下样式表是从/gitweb.css而不是/gitweb/gitweb.css加载的。

<base href="/gitweb" />
<link rel="stylesheet" type="text/css" href="gitweb.css"/>

我发现此问题a fix表示这些链接被解释为绝对网址。不幸的是,我没有使用Apache - 这是在修复中使用的。

反正。我只是想知道为什么href="gitweb.css"没有使用base href

1 个答案:

答案 0 :(得分:3)

他确实如此,但缺少的斜杠使得浏览器认为“gitweb”是一个页面并且只使用“/”。哪个与基数相同。

请参阅:https://stackoverflow.com/a/1889957/4516689

或规范中的示例:http://www.w3.org/TR/html5/document-metadata#the-base-element

<!DOCTYPE html>
<html>
    <head>
        <title>This is an example for the &lt;base&gt; element</title>
        <base href="http://www.example.com/news/index.html">
    </head>
    <body>
        <p>Visit the <a href="archives.html">archives</a>.</p>
    </body>
</html>
  

上例中的链接是指向的链接   “http://www.example.com/news/archives.html”。