浏览器如何向与尾随斜杠相关的主机发送网址是否存在一致性和/或标准?
这意味着,如果我在http://example.comWeb浏览器的地址栏中输入,浏览器是否会添加尾部斜杠(http://example.com/)?
Gre*_*ill 29
从浏览器发送到服务器的HTTP请求不包括域名,只包括"路径"部分(从域名后面的第一个斜杠开始).由于路径不能为空,/因此在这种情况下会发送a .
针对网站根目录的示例GET请求可能是:
GET / HTTP/1.0
在/上述不能省略.
Dor*_*Dor 16
正如RFC 2616所述:
3.2.2 http URL
"http"方案用于通过HTTP
协议定位网络资源.本节定义了
http URL 的特定于方案的语法和语义.http_URL ="http:""//"host [":"port] [abs_path ["?" 查询]]
如果端口为空或未给出,则假定端口80.语义
是标识的资源位于服务器上,监听该主机端口上的TCP连接,资源的Request-URI是abs_path(第5.1.2节).应尽可能避免在URL中使用IP地址(参见RFC 1900 [24]).如果URL中不存在abs_path,则在用作资源的Request-URI时必须以"/"形式给出(第5.1.2节).如果代理收到的主机名不是完全限定的域名,则可以将其域添加到收到的主机名中.如果代理收到完全限定的域名,则代理不得更改主机名.
阅读更多:http://www.faqs.org/rfcs/rfc2616.html#ixzz0kGbpjYWa
5.1.2 Request-URI
...
例如,希望直接从源服务器检索上述资源的客户端将创建到主机"www.w3.org"的端口80的TCP连接并发送以下行:Run Code Online (Sandbox Code Playgroud)GET /pub/WWW/TheProject.html HTTP/1.1 Host: www.w3.org然后是请求的其余部分.注意绝对路径不能为空; 如果原始URI中不存在,则必须以"/"(服务器根)的形式给出.
阅读更多:http://www.faqs.org/rfcs/rfc2616.html#ixzz0kGcaRbqU
请注意,当URL具有路径元素时,这是一个非常不同的问题:
http://example.com/dir
Run Code Online (Sandbox Code Playgroud)
是一个不同的URL比
http://example.com/dir/
Run Code Online (Sandbox Code Playgroud)
并且实际上可能包含不同的内容,并且具有不同的搜索引擎排名.
就协议而言,http://example.com/something两者http://example.com/something/有很大不同。如果以这种方式实现,某些服务器可能会将您从一个服务器重定向到另一个服务器。
对于纯域名,它总是发送以斜杠结尾的请求。(域名本身不包含在 HTTP 请求的路径部分中,正如 Greg Hewgill 和其他人所写的那样。但是,它包含在标头中。)
您可以使用 Fiddler 或 WireShark 等工具进行检查。
| 归档时间: |
|
| 查看次数: |
9175 次 |
| 最近记录: |