Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带../的URL是如何格式化的?_Url_Url Routing - Fatal编程技术网

带../的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标准的一部分,还是取决于浏览器或服务器 以下是一个您可以尝试的示例: 是的,它是 在图书馆里,我们可以阅读 路径段“.”和“.”也称为点段 为路径名层次结构中的相对引用定义。他们 用于相

我尝试过这种格式的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;
             [...]