【问题标题】:Differences in declaring your root directory in HTML在 HTML 中声明根目录的区别
【发布时间】:2013-02-27 18:10:42
【问题描述】:

这个问题困扰了我很长时间,所以我需要问这个问题。

/./ 有什么区别,只是服务器设置问题?

例如,如果我们在根目录中寻找图像文件夹,我们会这样写:

<img src="/images">

但是,另一个服务器只会接受它,如下所示:

<img src="./images">

这不是什么大问题,但在理想情况下,我想我可以相对轻松地将我的网站转移到另一台服务器上,而无需更新诸如此类的次要细节。

当然,我可以在 PHP 中声明它并在配置文件中设置一次,但它确实困扰着我。为什么有两种声明根的方法?

【问题讨论】:

    标签: html document-root


    【解决方案1】:

    要引用相对于当前页面的文件,您可以直接写出不带前缀的路径,也可以通过前缀./ 来明确说明它。要访问路径相对于站点根目录的文件,请在路径前加上 /

    总结

    /绝对路径(从根目录到资源的完整路径)
    ./从当前目录到相对路径(等于不指定任何文件夹前缀)
    ../从父目录到相对路径
    ../../从父级到父级的相对路径

    示例

    Current URL               Resource path          Resolves to
    
    /pages/home.html          ./picture.jpg          /pages/picture.jpg
    /pages/home.html          ../img/picture.jpg     /img/picture.jpg
    /pages/about/home.html    /img/picture.jpg       /img/picture.jpg
    /pages/about/home.html    img/picture.jpg        /pages/about/img/picture.jpg
    /home.html                img/picture.jpg        /img/picture.jpg
    

    【讨论】:

    • 现在您已经指出了这一点,这绝对是有道理的。甚至让我觉得自己有点傻!虽然我仍然很困惑为什么我工作的某些环境不接受/ 作为根。
    • 看看你添加的表,我想你已经破解了。它不起作用的一个地方是在我有许多站点的本地主机中。即localhost/site1localhost/site2等。所以如果我声明根目录,而不是当前文件夹,它会回到本地主机的根目录?
    • 是的。如果您在localhost/site1/page.html 并请求/js/jquery.js,则您正在请求localhost/js/jquery.js。您可以通过将不同的站点绑定到不同的端口来解决此问题,而不是将它们放在 localhost:80 上的不同文件夹中。
    • 谢谢 stigok。我以前也这么想,但一直没搞清楚,如果你把/./ 放到谷歌上,很难找到答案! (我已经尝试了几次。)当我在工作时,我实际上在我的主机文件中设置了我的开发环境,因此为每个站点分配了单独的 URL(和根目录)。在家里,我使用 localhost,因此存在差异。每天都是上学日。
    【解决方案2】:

    仅当源页面(包含此 HTML 的页面)本身位于域的根目录时才相同。

    一般情况下,./images 等价于images

    【讨论】:

    • 感谢dystroy。根据 stigok 的回答,这也很有意义。我想我从来没有遇到过将其声明为当前文件夹(例如./images)的问题,因为我构建的几乎所有网站都基于根目录中的索引页面,该索引页面将拉入任何其他页面和内容。跨度>
    • 提示:首选相对 url。当images/images 都有效时,请使用第一个,因为如果您将站点在域的层次结构中向下移动,它仍然有效。
    【解决方案3】:

    这与 HTML 无关,除了在 HTML 中也使用 URL 的事实。这是在 URL 规范中定义的。简而言之,./ 是相对于当前的基本 URL,/ 是相对于服务器根目录(从技术上讲,它指的是基本 URL 的服务器部分)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-10
      • 2010-10-03
      • 2013-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-01
      相关资源
      最近更新 更多