Относительные URL-адреса и завершающие косые черты

Я искал это в Интернете раньше и подозреваю, что ответ - "ты не можешь", но поскольку я еще не нашел такого окончательного ответа, думаю, стоит спросить здесь. Самое близкое, что я нашел, касающееся проблемы, - это Тайна завершающей косой черты и относительного URL-адреса (который в настоящее время не работает, но у Google есть кэшированная версия только текста ).

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

/lorem/ipsum/dolor

относительный путь

not-dolor

будет разрешен как

/lorem/ipsum/not-dolor

, что, естественно, имеет смысл, когда / lorem / ipsum / dolor рассматривается как файловый ресурс, dolor , сидящий в каталог / lorem / ipsum / ; типичные, интуитивно понятные условности. Однако, поскольку значительное количество веб-сайтов теперь являются динамическими приложениями без сопоставления файловой системы для каждого URL-адреса, это может вызвать головную боль, потому что иногда вы действительно хотите работать относительно пути, как если бы в текущем дизайне была косая черта в конце.

Есть ли какой-нибудь разумный способ («без обработки / переменных / прочего на стороне сервера или JavaScript») использовать относительный путь, основанный на текущем пути, и не «каталог» текущий путь? Так что not-dolor может быть относительно / lorem / ipsum / dolor и производить

/lorem/ipsum/dolor/not-dolor

. Я не знаю никакого обходного пути, связанного с использованием чего-то вроде ./ not- dolor , начиная с . по-прежнему (/ lorem /) ipsum / . За исключением перенаправления на завершающую косую черту и проверки того, что все ресурсы имеют URL-адреса, которые соответствуют каталогу и файловому характеру, или изменения спецификации (!), Есть ли какой-либо способ решить эту проблему?

33
задан Adam Prescott 17 September 2019 в 21:40
поделиться