Non-HTTP/2 Resources
Priority: Critical
Impact: Negative
What issues it may cause
If a website is still using HTTP/1.1, it may suffer from several performance drawbacks compared to HTTP/2:
- Increased Latency: HTTP/1.1 handles requests sequentially, leading to increased latency due to head-of-line blocking, which results in longer loading and wait time.
- Higher Overhead: HTTP/1.1 sends headers uncompressed, leading to more data being transmitted.
- Inefficient Resource Loading: Lack of multiplexing and prioritization can result in inefficient resource loading and slower page rendering.
How do you fix it
Upgrade to HTTP/2: Ensure your server supports HTTP/2 and configure it to serve your website over this protocol. Learn more about HTTP/2.
What is the positive impact
Improved Load Times: HTTP/2’s multiplexing and header compression reduce latency and load times, leading to a faster user experience.
Enhanced Efficiency: More efficient use of network resources reduces bandwidth consumption, which is beneficial for both servers and clients.
Better User Experience: Faster and more efficient resource loading improves the overall user experience, making the website feel more responsive.
Future-Proofing: Adopting HTTP/2 ensures your website is using modern web standards, making it easier to implement future performance optimizations and features.
How to fetch the data for this report template
You will need to run a crawl for report template to generate report. When report has been generated and you have crawl id you can fetch data for the report using the following query:
- Query
- Variables
- cURL
query GetReportStatForCrawl(
$crawlId: ObjectID!
$reportTemplateCode: String!
$after: String
) {
getReportStat(
input: {crawlId: $crawlId, reportTemplateCode: $reportTemplateCode}
) {
crawlSiteSpeedAuditOpportunities(after: $after, reportType: Basic) {
nodes {
opportunityDigest
element
title
auditId
exampleUrl
urlCount
protocol
failedAuditsCount
warningAuditsCount
infoAuditsCount
}
totalCount
pageInfo {
endCursor
hasNextPage
}
}
}
}
{"crawlId":"TjAwNUNyYXdsNDAwMA","reportTemplateCode":"uses_http2_failed_items"}
curl -X POST -H "Content-Type: application/json" -H "apollographql-client-name: docs-example-client" -H "apollographql-client-version: 1.0.0" -H "x-auth-token: YOUR_API_SESSION_TOKEN" --data '{"query":"query GetReportStatForCrawl( $crawlId: ObjectID! $reportTemplateCode: String! $after: String ) { getReportStat( input: {crawlId: $crawlId, reportTemplateCode: $reportTemplateCode} ) { crawlSiteSpeedAuditOpportunities(after: $after, reportType: Basic) { nodes { opportunityDigest element title auditId exampleUrl urlCount protocol failedAuditsCount warningAuditsCount infoAuditsCount } totalCount pageInfo { endCursor hasNextPage } } } }","variables":{"crawlId":"TjAwNUNyYXdsNDAwMA","reportTemplateCode":"uses_http2_failed_items"}}' https://api.lumar.io/graphql