我正在检查此站点使用的http protcol http://www.dlf.in/ Chrome开发人员工具将其显示为http/1.1,如下图所示。铬开发人员工具显示的不正确的http协议?
但是命令行工具is-http2或python中的alpn好象表示http/1.1不可用。只有http1可用。这里发生了什么?
我做在Python中ALPN协商如下(OpenSSL的版本:OpenSSL的1.0.2h和Python 3.5.1版)
import ssl
import socket
port = 443
domain = 'www.dlf.in'
ctx = ssl.create_default_context()
ctx.set_alpn_protocols(['h2', 'spdy/3.1', 'spdy/3', 'spdy/2', 'http/1.1'])
conn = ctx.wrap_socket(socket.socket(socket.AF_INET, socket.SOCK_STREAM),
server_hostname=domain)
conn.connect((domain, port))
print(conn.selected_alpn_protocol())
我想知道为什么铬说它支持http/1.1 –
我以为你问为什么不是HTTP2。以上代码适用于HTTPS(443),因此不在本站点上(仅使用HTTP - 端口80)。它也说它是由IIS而不是Python支持的。而IIS绝对支持HTTP/1.1 - 现在所有的Web服务器现在都有一天。至于为什么你的工具不是说我不知道,因为你在这里给出的细节很少。目前它真的很不清楚你在问什么,好像你不知道你的系统是如何设置的! –