HTTP/2 Configuration

HTTP/2 supported IIS version 10 and above using Windows 10 or Windows Server 2016 or later.  HTTPS/2 uses a single connection (multiplexed)  between multiple requests; new browser requests sent without waiting for other requests to finish.  For web sites hosted in virtual machines might already be using HTTP/2.  If the app hosted in Azure Platform as a service such as Azure Web Site and/or application behind layer 7 load balancer such as Azure Application Gateway, and Azure Functions then HTTP/2 is not enabled by default.

Enabling Http/2 in Azure web sites

Navigate to Azure Web App, Click Configuration, Change Http Version to 2.0 from General Settings

Enabling Http/2 in App Gateway

Navigate to Azure Web App, Click Configuration, enable HTTP/2, click Save

Enabling Http/2 in Azure Functions

Select your Function App, Click Configuration (you can also click Platform features then click Configuration), General Settings, change Http version then click Save

Updating thru PowerShell script

For Web App and Function App

$propertiesObject = @{ http20Enabled = $true;}

Set-AzureRmResource -PropertyObject $propertiesObject -ResourceGroupName $ResourceGroupName -ResourceType Microsoft.Web/sites/config -ResourceName “$ResourceName/web” -ApiVersion 2016-08-01 -Force 

For App Gateway

$gw = Get-AzureRmApplicationGateway -name $appGw -ResourceGroupName $ResourceGroupName

$gw.EnableHttp2 = $true

Set-AzureRmApplicationGateway -ApplicationGateway @gw