这些网址在网址末尾是否有差异?
https://drchrono.com/about_us
https://drchrono.com/about_us/
Web框架和Web服务器(例如Apache,Nginx,Django)是否以不同方式处理这些请求?
答案 0 :(得分:25)
当涉及到相对URL时,浏览器会以不同方式对待它们。页面位于:
http://server/path
使用相对链接,如:
<a href='other'>
将解析该链接:
http://server/other
将path
替换为other
。如果起始网址是:
http://server/path/
然后解决的链接将是:
http://server/path/other
如果path
是目录而不是文件,大多数Web服务器将自动从以下位置重定向:
http://server/path
为:
http://server/path/
因为这几乎可以肯定你的意思。
答案 1 :(得分:5)
在没有正斜杠的Django URL中,会自动附加正斜杠。这是Django开发人员的偏好,而不是网络的硬编码规则(我认为它实际上是Django中的一个设置)。
答案 2 :(得分:3)
/是分离字符。
来自RFC
最后/表示网址中可能有更多内容。某些URL方案(例如ftp,http和文件方案)包含 可被视为等级的名称;的组成部分 层次结构由“/".
分隔
答案 3 :(得分:1)
它们作为不同的请求处理,尽管它们可能在最后匹配相同的资源/处理程序/例程,并以相同的方式处理。
由于/应该是类似于某个目录的东西,所有相对链接都将位于/ ie previous / target / something ...而没有的那些将使相对链接处于同一级别之前/东西。
答案 4 :(得分:1)
请注意,搜索引擎将这些视图视为2个不同的页面。因此伤害了你的seo。