【问题标题】:does using different relative paths for the same resource get cached by the browser just once?对同一资源使用不同的相对路径是否只会被浏览器缓存一次?
【发布时间】:2017-07-10 05:14:07
【问题描述】:

我的问题可能不清楚,所以这里是一个例子。

我有一个 PHP 脚本,它会自动添加所有 HTML 资源的相对路径,例如

  • CSS - <link href href="<?php echo $siteroot ?>css/main.css" ... >

  • JS - <script src="<?php echo $siteroot ?>js/main.js"</script>

  • 图片<img src="<?php echo $siteroot ?>img/avatar.jpg" ... >

  • PHP 等其他用途包括

脚本将自动生成站点根目录的相对路径,这将变为“../”、“../../”、“../../../”或空字符串 '' 如果它是站点根文件夹 - 主索引

我的问题是这会影响浏览器使用的缓存系统吗?我之所以想到这一点,是因为相同的资源在子文件夹中的许多页面中会有所不同!

一次../../img/avatar.jpg 其他../img/avatar.jpg,其他img/avatar.jpg单独!

我尝试使用 chrome 并使用 img 运行文件,然后删除 img 并在子文件夹中打开文件。这有效,图像就在那里!

我仍然不确定并希望获得有关相对路径缓存过程的正确答案。如果有任何额外的信息,我将不胜感激:)

谢谢

【问题讨论】:

  • 我也会尝试使用浏览器调试器的“网络”选项卡来验证这一点。

标签: php html caching path relative-path


【解决方案1】:

这些资源将被缓存一次,因为绝对路径相同,无论它们的相对路径不同。浏览器使用绝对路径进行缓存。

【讨论】:

  • 谢谢@ponury-kostek,这是一个快速且内容丰富的答案。我不知道绝对路径会被缓存。 :)
猜你喜欢
  • 1970-01-01
  • 2020-01-25
  • 2012-03-04
  • 1970-01-01
  • 1970-01-01
  • 2018-11-07
  • 2019-08-03
  • 1970-01-01
  • 2015-04-29
相关资源
最近更新 更多