html - 从同一文件夹中的 2 个文件到同一图像的 img 标签中的相对路径不同
问题描述
我在同一个文件夹中有 2 个 cfm 页面,做的事情非常相似。他们都为用户相关数据生成一些报告。我最近添加了一个加载图像,因为生成报告的一些查询可能需要一段时间。
第二页是一个新的但非常相似的页面。由于页面位于同一个文件夹中,我认为加载图像的相对路径应该相同。但是,新页面为图像请求提供 404 响应,当我检查 http 请求标头时,它会在相对路径中添加一个额外的文件夹,因此无法找到图像。
<img src="../../../Graphics/General/loading.gif">
它们都是非常相似的页面,因为它们显示一个简单的表单,然后运行一些查询并生成一个表以向用户显示相关数据。然而,上面的相对路径在一个页面中生成“Dev/Menu/Graphics/General/loading.gif”,在另一页中生成“Dev/Graphics/General/loading.gif”。
从那以后,我发现在新文件的图像路径中添加一个额外的“../”已经为新页面修复了它,但是我不知道为什么这个修复是必要的以及它为什么起作用。
<img src="../../../../Graphics/General/loading.gif">
我希望由于两个页面都位于同一个文件夹中,因此给定图像的相对路径将完全相同。我主要只是好奇为什么不是这样。
解决方案
这两个报告在同一个文件夹中。您是直接加载这些页面吗?
yourSite.com/reports/report1.cfm
yourSite.com/reports/report2.cfm
还是这些文件是通过其他父页面加载的?
yourSite.com/some/other/folder/with/include_report1.cfm
yourSite.com/yet/another/folder/that/contains/include_report2.cfm
通常,最好直接从 Web 根目录加载图像,以避免此类相对路径问题。如果Graphics
文件夹位于根目录,则只需在两个文件中引用图像,如下所示:
<img src="/Graphics/General/loading.gif">
这样,无论什么文件包含它们并将最终的 HTML 呈现给浏览器都无关紧要,无论如何都将从 Web 根目录引用图像。
推荐阅读
- python-3.x - 通过 tweepy 在 twitter 上搜索很多关键词
- php - 如何在数组内的对象内循环对象?
- python - 为什么我们在 python 中使用与命名元组的类型名称相同的变量名称?
- arrays - Jq - 从不同的键打印一行值
- git - Git Rebase 导致重复代码审查?
- python - 将 pickle 用于不和谐机器人时出错 | 不和谐.py
- google-apps-script - Google 幻灯片 API (Slides.Presentations) 未通过 Google Apps 脚本定义
- microk8s - 使用 kfp.Client python api 将管道提交到 microk8s.kubeflow
- c# - Mysql Server 在添加 ADO.net [ASP.net API] 时停止
- java - 通知中的Android条件PendingIntent?