带../的URL是如何格式化的?
我尝试过这种格式的URL:带../的URL是如何格式化的?,url,url-routing,Url,Url Routing,我尝试过这种格式的URL: https://A.com/B/../C 据我所知,它们总是被重新格式化: https://A.com/B/../C becomes https://A.com/C https://A.com/B/C/../C/D becomes https://A.com/B/C/D 这是URL标准的一部分,还是取决于浏览器或服务器 以下是一个您可以尝试的示例: 是的,它是 在图书馆里,我们可以阅读 路径段“.”和“.”也称为点段 为路径名层次结构中的相对引用定义。他们 用于相
https://A.com/B/../C
据我所知,它们总是被重新格式化:
https://A.com/B/../C becomes https://A.com/C
https://A.com/B/C/../C/D becomes https://A.com/B/C/D
这是URL标准的一部分,还是取决于浏览器或服务器
以下是一个您可以尝试的示例:
是的,它是
在图书馆里,我们可以阅读
路径段“.”和“.”也称为点段
为路径名层次结构中的相对引用定义。他们
用于相对路径引用的开头
(第4.2节)以指示层次结构内的相对位置
名字之树
我们可以看到这些相对段是如何处理的
以及相关部分。/C
将如何与基础https://A.com/B
进入https://A.com/../C
返回由引用的路径组件组成的字符串
附加到基本URI路径(即。,
排除基本URI中最右边“/”之后的任何字符
路径,或排除整个基本URI路径(如果不包含)
任何“/”字符)
进一步了解点/../
将如何获得
[……]
- C.如果输入缓冲区以前缀“/../”或“/..”开头, 其中“.”是完整的路径段,然后替换该路径段 在输入缓冲区中添加“/”前缀,并删除最后一个 段及其前面的“/”(如果有)从输出 缓冲器[……]
https://A.com/C
[...]
else
T.path = merge(Base.path, R.path);
T.path = remove_dot_segments(T.path);
endif;
[...]