search cancel

HTTP/2 access failing on proxy when server does not support HTTP/2.

book

Article ID: 256346

calendar_today

Updated On:

Products

ISG Proxy ProxySG Software - SGOS

Issue/Introduction

This article is to further show on how this behaviour looks like from the Proxy policy trace and HTTP debug.

Client is sending the request in HTTP/2 but the server does not support HTTP/2.

Proxy running version 7.3 that supports HTTP/2.

Cause

The Proxy policy trace will show the following information on the version requested by the client and supported by the server.

server.response.code: 200
client.response.code: 200
client.request.version:  HTTP/2
server.response.version: HTTP/1.1

 

The HTTP Debug below indicates that the server only support HTTP/1.x.

0892.296 HTTP   Explicit HTTP INFO   HTTP SW 1029DA4EA40 for 1029DA45A40    Notifying client-side connection that upstream is HTTP/1.1 (to restrict concurrent streams), hostname=www.example.com, session=102EB2F2020

"HTTP SW 1029DA4EA40 for 1029DA45A40" means it's HTTP/1.x, where it would be "H2 SW 1029DA4EA40 for 1029DA45A40" if it was HTTP/2. 

Resolution

A policy or rule below need to be applied to disable HTTP/2 for the affected server:

<proxy>
  client.connection.ssl_server_name.substring=www.example.com http2.client.accept(no) http2.server.request(no)