Есть ли разница между абсолютным и относительным путями при указании на определенные файлы в вашем HTML? - PullRequest
1 голос
/ 03 марта 2009

наш офис только что получил этого нового парня с большим опытом и настаивал на том, чтобы мы прекратили использовать абсолютные пути, такие как:

http://somesite.com/subdir1/images/filename.ext


при указании пути нашего изображение, когда оно находится рядом с файлом, который вызывает его, говорят, что мы могли только что использовать:

./subdir1/images/filename.ext


но причина, по которой мы ранее использовали абсолютные пути, заключалась в том, чтобы предотвратить появление мертвых ссылок при помещении другой страницы в другой каталог, вместо того, чтобы явно набирать

"../../" ИЛИ "./"

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

Ответы [ 6 ]

3 голосов
/ 03 марта 2009

Все это отдельный http-запрос к серверу. Относительно или абсолютное это не имеет значения.

Конечно, если абсолютный URL-адрес указывает на тот же веб-сайт, но на другом хосте, то это может ускорить процесс, поскольку оно нарушает ограничение 2 одновременных запросов http . например, ваш сайт находится по адресу www.example.com , и вы обслуживаете все свои изображения с static.example.com .

Другой способ предотвратить упоминание о неработающих ссылках - использовать виртуальные URL-адреса: /images/foo.png

.
2 голосов
/ 03 марта 2009

Использование относительных путей позволяет вам переместить все ваше веб-приложение в другой домен и / или папку, не исправляя каждый путь.

1 голос
/ 03 марта 2009

Относительные пути позволяют уменьшить размер HTML, что приводит к меньшему потреблению полосы пропускания.

Относительные пути являются контекстно-зависимыми, то есть и site.com, и www.site.com будут работать одинаково хорошо, без необходимости перенаправления с site.com на www.site.com.

0 голосов
/ 03 марта 2009

Там может быть что-то вроде культового груза.

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

Так что это могло быть правдой на его старом рабочем месте. Справедливо ли это на вашем рабочем месте, вы должны выяснить.

Но если он не может объяснить, почему он это говорит, это народная вера, пока не доказано обратное.

0 голосов
/ 03 марта 2009

Я предпочитаю анализировать Request.RawURL вручную, чтобы избежать коллизий с URL

0 голосов
/ 03 марта 2009

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

/foo/monkey-wrench.song

Относительные пути будут относиться к странице, на которой вы находитесь, и ломаются, если вы когда-либо перемещаете файл за пределы его текущего каталога.

../foo/everlong.song

Шлепание по доменной части сделало бы его абсолютным URL.

http://example.com/foo/this-is-a-call.song

Что хорошо, если у вас есть скребок, и тогда они смогут ссылаться на ваш собственный сайт, чтобы при проверке журналов рефералов вы знали, кому отправлять уведомление об отмене. *

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...