Относительный путь в теге img к одному и тому же изображению из двух файлов в одной папке отличается - PullRequest
0 голосов
/ 08 июня 2019

У меня есть 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">

Я ожидаю, что, поскольку обе страницы находятся в одной и той же папке, относительный путь к данному изображению будет абсолютно одинаковым. Мне просто любопытно, почему это не так.

1 Ответ

0 голосов
/ 11 июня 2019

Два отчета находятся в одной папке. Вы загружаете эти страницы напрямую?

 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

Часто лучше загружать изображения непосредственно из корневого веб-каталога, чтобы избежать проблем относительного пути, подобных этим. Если папка Graphics находится в корневом каталоге, просто укажите ссылку на изображение в обоих файлах следующим образом:

<img src="/Graphics/General/loading.gif">

Таким образом, не имеет значения, какой файл включает их и отображает окончательный HTML-код в браузере, независимо от того, что изображение будет ссылаться из корня сети.

...