Azure Web Apps currently doesn't suppport HTTP/2: https://feedback.azure.com/forums/169385-web-apps/suggestions/9552936-enable-http-2-on-azure-web-apps.
What about VMs? If have an Ubuntu VM running nginx > 1.9.5, I could use HTTP/2.
But how will the Azure load balancer and https endpoint behave?
Load Balancer is protocol agnostic and will pass through any TCP or UDP application, and this includes HTTP/2.
(I'm product manager for Azure Load Balancer).
Application Gateway runs on top of the Azure Load Balancer and adds Layer 7 HTTP routing capability
From the Azure Application Gateway docs:
Q. What is Application Gateway?
Azure Application Gateway is an Application Delivery Controller (ADC) as a service, offering various layer 7 load balancing capabilities for your applications. It offers highly available and scalable service, which is fully managed by Azure.
Q. How does Application Gateway support HTTP/2?
HTTP/2 protocol support is available to clients connecting to Application Gateway listeners only. The communication to backend server pools is over HTTP/1.1.
By default, HTTP/2 support is disabled. The following Azure PowerShell code snippet example shows how you can enable it:
$gw = Get-AzureRmApplicationGateway -Name test -ResourceGroupName hm
$gw.EnableHttp2 = $true
Set-AzureRmApplicationGateway -ApplicationGateway $gw
So in your specific case, you'd use HTTP/2 between the load balancer and customers, and HTTP/1.1 between the load balancr and your VMs.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With