第 5 章 HTTP/1.1 的语义:HTTP 的扩展功能(2)
[日] 涩川喜规
5.5 X-Powered-By 首部
服务器向浏览器返回的响应中包含 X-Powered-By 首部。从带有 X- 这一点来看,它不是 RFC 规范中的首部。许多服务器用该首部返回系统名称,它也因此成为事实标准。这或许是受到了电子邮件应用程序用 X-Mail 来表明应用程序名称的影响吧。
日本在 2007 年左右曾掀起一场是否应该隐藏 X-Powered-By 首部的讨论。隐藏该首部的优点是响应内容变少、服务器名称引发安全漏洞的概率变小等。即使服务器本身没有安全漏洞,通过只支持 Windows 2000 的 IIS 5.0,Windows 的脆弱性也会暴露出来,服务的脆弱性也会因此显露无疑。奥一穗曾在博客中提到隐藏 X-Powered-By 首部的优点是,Firefox 的源代码会根据 X-Powered-By 首部改变客户端的动作,具体如代码清单 5-1 所示。
代码清单 5-1 根据 X-Powered-By 改变客户端动作的 Firefox 源代码
上面的代码是判断是否支持管道技术的逻辑。虽然管道技术在 HTTP/1.1 中实现了标准化,但是有的服务器或者代理并未提供支持。因此,为了确认服务器是否支持管道技术,Mozilla 浏览器会确认服务器返回的 X-Powered-By。
如今的源代码中也存在类似的代码,但浏览器查看的并不是 X-Powered-By,而是在 RFC 1945 的 HTTP/1.0 中标准化的 Server 首部 14。Microsoft 的 IIS 5.0 已经使用了 Server 首部,再加上 Netscape Enterprise 最后一次更新是在 2002 年,已经没有什么人使用这个系统了,因此也不存在兼容性的问题。
公开
同步至部落
取消
完成
0/2000
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
![](https://static001.geekbang.org/resource/image/d0/e4/d0880927e2a522a038be2d04bf19dfe4.png)
本文深入探讨了HTTP/1.1协议的扩展功能和RPC技术,以及WebDAV的相关术语和方法。其中介绍了服务器返回的X-Powered-By首部以及对隐藏X-Powered-By首部的讨论和相关安全问题。此外,还介绍了远程过程调用(RPC)及其历史和发展,以及XML-RPC、SOAP和JSON-RPC的基本原理和参数类型。文章还涉及了WebDAV的相关术语和方法。另外,还介绍了网站间共用的认证和授权平台,包括单点登录、Kerberos认证、SAML、OpenID、OAuth等内容。这些内容对于了解HTTP/1.1协议的扩展功能和RPC技术具有一定参考价值。文章还介绍了OpenSocial,这是一种社交网络通用API,以及OAuth的授权结构。总的来说,本文内容涵盖了HTTP协议的扩展功能、RPC技术、WebDAV、认证和授权平台以及社交网络API等多个方面,对于想要深入了解这些技术的读者具有重要参考价值。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《详解 HTTP:协议基础与 Go 语言实现》
《详解 HTTP:协议基础与 Go 语言实现》
立即购买
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论