我想了解有关 GET 的一些说明。如果我有一个 URI,https://google.com/something/
并且我尝试访问该网页,Web 服务器会将其解释为 的 GET 请求,/something/
而不是 的 GET
https://google.com/something/
?服务器访问日志通常只会记录/something/
访问者访问网站的部分。但是,如果我对该完整地址执行 curl,互联网会告诉我 curl 正在对完整 URI 执行 GET。因此...这里的区别是什么?
另外,缩写地址到底/something/
代表什么?它是位于被访问网站根目录中的文件吗?如果我将重写设置为/something/
301 到特定地址,而/something/
它实际上不是文件或目录,该怎么办?这样的请求会如何处理?
最后,通过 https 和 http auth 访问网站仍然是标准吗?https://username:[email protected]/
答案1
但是,如果我对该完整地址执行 curl,互联网会告诉我 curl 正在对完整 URI 执行 GET。因此...这里的区别是什么?
发送的 HTTP 请求如下所示:
GET /something/ HTTP/1.1
Host: google.com
...more HTTP headers here...
curl
将显示它正在发送的内容,添加-v
。
另外,缩写地址 /something/ 到底代表什么?它是位于所访问网站根目录中的文件吗?如果我将 /something/ 重写为 301 到特定地址,而 /something/ 实际上不是文件或目录,会怎样?这样的请求会如何处理?
这完全取决于处理请求的服务器。协议规定客户端请求该位置的内容 - 服务器响应的内容完全取决于服务器的实现。
最后,https://用户名:[电子邮件保护]/使用 http auth 通过 https 访问网站仍然是标准吗?
这是设置用于基本身份验证的凭据的一种方法;如果服务器要求,大多数 HTTP 客户端都会提示输入凭据。