Я искал это в Интернете раньше и подозреваю, что ответ - "ты не можешь", но поскольку я еще не нашел такого окончательного ответа, думаю, стоит спросить здесь. Самое близкое, что я нашел, касающееся проблемы, - это Тайна завершающей косой черты и относительного 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-адреса, которые соответствуют каталогу и файловому характеру, или изменения спецификации (!), Есть ли какой-либо способ решить эту проблему?