{"id":2223,"date":"2026-04-28T10:41:00","date_gmt":"2026-04-28T09:41:00","guid":{"rendered":"https:\/\/jalvo.eu\/czy-googlebot-uzywa-http2-co-zmienia-dla-serwera\/"},"modified":"2026-09-25T03:46:36","modified_gmt":"2026-09-25T02:46:36","slug":"czy-googlebot-uzywa-http2-co-zmienia-dla-serwera","status":"publish","type":"post","link":"https:\/\/jalvo.eu\/pl\/czy-googlebot-uzywa-http2-co-zmienia-dla-serwera\/","title":{"rendered":"Czy Googlebot u\u017cywa HTTP\/2? Co to zmienia dla Twojego serwera"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Tak, Googlebot potrafi crawlowa\u0107 po HTTP\/2. Domy\u015blnie jednak nadal u\u017cywa HTTP\/1.1 i przy ka\u017cdej wizycie sam wybiera wersj\u0119 protoko\u0142u. Dla administrator\u00f3w serwer\u00f3w obs\u0142uga HTTP\/2 przez Googlebota oznacza mniejsze obci\u0105\u017cenie przy crawlowaniu. Nie oznacza lepszych pozycji. Decyzja sprowadza si\u0119 wi\u0119c do tego, jak stabilne s\u0105 Tw\u00f3j serwer \u017ar\u00f3d\u0142owy i proxy.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Googlebot a HTTP\/2 i HTTP\/1.1: kt\u00f3rego protoko\u0142u u\u017cywa?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Obu, a domy\u015blnie HTTP\/1.1. W <a href=\"https:\/\/developers.google.com\/crawling\/docs\/crawlers-fetchers\/overview-google-crawlers\" rel=\"nofollow noopener\" target=\"_blank\">przegl\u0105dzie robot\u00f3w indeksuj\u0105cych Google<\/a> czytamy, \u017ce robot wybiera protok\u00f3\u0142, kt\u00f3ry daje najlepsz\u0105 wydajno\u015b\u0107 crawlowania, i mo\u017ce go zmienia\u0107 mi\u0119dzy sesjami na podstawie statystyk z wcze\u015bniejszych wizyt. W\u0142\u0105czenie HTTP\/2 tylko udost\u0119pnia ten protok\u00f3\u0142. Googlebot mo\u017ce z niego skorzysta\u0107, ale nie musi i nie zrobi tego przy ka\u017cdej wizycie. Widzisz w logach \u017c\u0105dania HTTP\/1.1 po zmianie? To normalne (ludzie panikuj\u0105 z tego powodu cz\u0119\u015bciej, ni\u017c mo\u017cna by s\u0105dzi\u0107).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Co crawlowanie po HTTP\/2 zmienia dla Twojego serwera<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Przede wszystkim oszcz\u0119dza zasoby obliczeniowe, takie jak CPU i RAM, zar\u00f3wno na Twoim serwerze, jak i po stronie Google. Wynika to z multipleksowania: jedno po\u0142\u0105czenie obs\u0142uguje wiele \u017c\u0105da\u0144 r\u00f3wnolegle, wi\u0119c to samo crawlowanie wymaga mniej uzgodnie\u0144 TCP i TLS. Google zaznacza, \u017ce chce pobra\u0107 jak najwi\u0119cej stron podczas jednej wizyty, nie przeci\u0105\u017caj\u0105c przy tym serwera. A je\u015bli Twoja maszyna i tak nie daje rady? Udokumentowanym rozwi\u0105zaniem jest obni\u017cenie tempa crawlowania, a nie zmiana protoko\u0142u. R\u00f3\u017cnic\u0119 odczujesz g\u0142\u00f3wnie na du\u017cych serwisach z intensywnym crawlowaniem, gdzie narzut na po\u0142\u0105czenia szybko si\u0119 kumuluje.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Czy HTTP\/2 daje korzy\u015b\u0107 SEO w rankingu?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Nie. Google twierdzi, \u017ce poza zaoszcz\u0119dzonymi zasobami nie ma \u017cadnej korzy\u015bci dla konkretnych us\u0142ug, a jako przyk\u0142ad podaje \u201ebrak wzrostu pozycji w wyszukiwarce Google&#8221;. Wydajno\u015b\u0107 robota i <a href=\"https:\/\/jalvo.eu\/shared-vs-dedicated-ip-hosting-seo\/\">sygna\u0142y wp\u0142ywaj\u0105ce na ranking<\/a> to dwie osobne sprawy, wi\u0119c nie w\u0142\u0105czaj HTTP\/2 w nadziei na awans w wynikach. Mimo to warto go w\u0142\u0105czy\u0107 z kilku sensownych powod\u00f3w:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Mniejsze obci\u0105\u017cenie serwera<\/strong> przy intensywnym crawlowaniu.<\/li>\n<li>Szybsze \u0142adowanie stron dla Twoich w\u0142asnych odwiedzaj\u0105cych, bo przegl\u0105darki mog\u0105 pobiera\u0107 wiele zasob\u00f3w przez jedno po\u0142\u0105czenie.<\/li>\n<li>Mniej otwartych po\u0142\u0105cze\u0144 do utrzymania na mocno obci\u0105\u017conych proxy.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Szczerze m\u00f3wi\u0105c, dla crawlowania wa\u017cniejsze s\u0105 inne rzeczy. Poprawne kody statusu. Rozs\u0105dne nag\u0142\u00f3wki cache. Google zaleca <strong>ETag zamiast Last-Modified<\/strong>, bo ETag omija problemy z formatowaniem dat.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">W\u0142\u0105czanie http2 w nginx bez psucia crawlowania<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">W\u0142\u0105cz http2 w nginx dla nas\u0142uchu TLS i u\u017cyj sk\u0142adni, kt\u00f3rej oczekuje Twoja wersja NGINX. Starsze wydania przyjmuj\u0105 parametr <code>http2<\/code> w dyrektywie <code>listen<\/code>. Nowsze wymagaj\u0105 osobnej dyrektywy <code>http2 on;<\/code>. O jednym cz\u0119sto si\u0119 zapomina: po\u0142\u0105czenie klient-proxy i po\u0142\u0105czenie proxy-serwer \u017ar\u00f3d\u0142owy to osobne odcinki. HTTP\/2 na froncie nie zmienia sposobu, w jaki NGINX komunikuje si\u0119 z backendem. Je\u015bli Tw\u00f3j ruch przechodzi przez <a href=\"https:\/\/jalvo.eu\/services\/\">us\u0142ug\u0119 proxy opart\u0105 na NGINX<\/a> z adresami IP w UE i USA, sprawd\u017a osobno nas\u0142uch od strony klient\u00f3w i serwer \u017ar\u00f3d\u0142owy. Po w\u0142\u0105czeniu:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Uruchom <code>curl -I --http2<\/code> na adres strony i potwierd\u017a protok\u00f3\u0142 w odpowiedzi.<\/li>\n<li>Przefiltruj logi serwera pod k\u0105tem Googlebota i upewnij si\u0119, \u017ce kody statusu si\u0119 nie zmieni\u0142y.<\/li>\n<li>Je\u015bli b\u0142\u0119dy pojawiaj\u0105 si\u0119 tylko za proxy, sprawd\u017a, jak proxy NGINX wsp\u00f3\u0142gra z crawlowaniem.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Dlaczego \u0142agodne zamykanie po\u0142\u0105cze\u0144 HTTP\/2 ma znaczenie<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Przed zamkni\u0119ciem po\u0142\u0105czenia HTTP\/2 serwer powinien wys\u0142a\u0107 ramk\u0119 GOAWAY, \u017ceby klient wiedzia\u0142, kt\u00f3re \u017c\u0105dania zosta\u0142y przetworzone. <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc9113.html\" rel=\"nofollow noopener\" target=\"_blank\">Specyfikacja HTTP\/2, czyli RFC 9113<\/a>, ostrzega, \u017ce klient, kt\u00f3ry nie mo\u017ce ponowi\u0107 \u017c\u0105da\u0144, traci wszystkie \u017c\u0105dania w toku, gdy po\u0142\u0105czenie zostanie zerwane. Najbardziej obrywaj\u0105 na tym <a href=\"https:\/\/jalvo.eu\/harnessing-nginx-based-proxies-to-enhance-website-crawling-and-indexing\/\">po\u015brednicy, tacy jak proxy<\/a>. \u0141agodne zamkni\u0119cie odbywa si\u0119 w dw\u00f3ch krokach. Najpierw GOAWAY z maksymalnym identyfikatorem strumienia i kodem NO_ERROR. Potem, po co najmniej jednym czasie obiegu (RTT), drugi GOAWAY z faktycznym ostatnim ID strumienia. Co to oznacza w codziennej pracy? Przy du\u017cym ruchu robot\u00f3w u\u017cywaj <code>nginx -s reload<\/code> zamiast twardych restart\u00f3w.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Jak zrezygnowa\u0107 z crawlowania po HTTP\/2<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Skonfiguruj serwer tak, \u017ceby zwraca\u0142 kod statusu 421, gdy Google pr\u00f3buje po\u0142\u0105czy\u0107 si\u0119 ze stron\u0105 po HTTP\/2, zgodnie z opisem w <a href=\"https:\/\/developers.google.com\/crawling\/docs\/crawlers-fetchers\/overview-google-crawlers\" rel=\"nofollow noopener\" target=\"_blank\">dokumentacji robot\u00f3w indeksuj\u0105cych Google<\/a>. Nie mo\u017cesz tego zrobi\u0107? Mo\u017cesz skontaktowa\u0107 si\u0119 z zespo\u0142em Google odpowiedzialnym za crawlowanie, cho\u0107 samo Google nazywa to rozwi\u0105zaniem tymczasowym. Ta sama strona ostrzega, \u017ce wysy\u0142anie robotom niew\u0142a\u015bciwych kod\u00f3w statusu mo\u017ce wp\u0142yn\u0105\u0107 na to, jak witryna wy\u015bwietla si\u0119 w us\u0142ugach Google. Dlatego 421 zwracasz tylko na \u017c\u0105dania HTTP\/2. Nigdy dla ca\u0142ej witryny. Moim zdaniem rezygnacja ma sens w dw\u00f3ch przypadkach: HTTP\/2 dzia\u0142a niestabilnie na serwerze \u017ar\u00f3d\u0142owym albo proxy, albo gubisz \u017c\u0105dania w toku i nie da si\u0119 tego szybko naprawi\u0107.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Protok\u00f3\u0142 to tylko jeden element uk\u0142adanki infrastrukturalnej. Warto te\u017c sprawdzi\u0107, jak dedykowane IP i HTTP\/2 pasuj\u0105 do Twojej konfiguracji oraz czy <a href=\"https:\/\/jalvo.eu\/choosing-hosting-location-readers-servers-disagree\/\">lokalizacja serwera i op\u00f3\u017anienia<\/a> odpowiadaj\u0105 temu, gdzie faktycznie s\u0105 Twoi czytelnicy. Podsumowuj\u0105c: crawlowanie Googlebota po HTTP\/2 dotyczy wydajno\u015bci serwera, a nie pozycji w rankingu, wi\u0119c decyzj\u0119 podejmuj na podstawie stabilno\u015bci i obci\u0105\u017cenia swojego serwera.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FAQ<\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-1790304060877-0\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Czy w\u0142\u0105czenie HTTP\/2 sprawi, \u017ce Googlebot b\u0119dzie cz\u0119\u015bciej crawlowa\u0142 moj\u0105 stron\u0119?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>u003cpu003eGoogle tego nie obiecuje. Robot wybiera protok\u00f3\u0142 na podstawie wydajno\u015bci crawlowania, a jedyn\u0105 udokumentowan\u0105 korzy\u015bci\u0105 s\u0105 zaoszcz\u0119dzone zasoby obliczeniowe. To, jak cz\u0119sto i ile Google crawluje, zale\u017cy od innych czynnik\u00f3w.u003c\/pu003e<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1790304060877-1\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Czy Googlebot crawluje po HTTP\/3?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>u003cpu003ePrzegl\u0105d robot\u00f3w Google wymienia tylko HTTP\/1.1 i HTTP\/2. Aktualn\u0105 list\u0119 obs\u0142ugiwanych protoko\u0142\u00f3w sprawdzaj na tamtej stronie, zamiast zgadywa\u0107.u003c\/pu003e<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1790304060877-2\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Czy odpowied\u017a 421 mo\u017ce zaszkodzi\u0107 mojej stronie w wyszukiwarce Google?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>u003cpu003eZwracana tylko na \u017c\u0105dania HTTP\/2 jest udokumentowan\u0105 przez Google metod\u0105 rezygnacji. Niew\u0142a\u015bciwe kody statusu w innych miejscach mog\u0105 wp\u0142yn\u0105\u0107 na to, jak witryna wy\u015bwietla si\u0119 w us\u0142ugach Google, wi\u0119c zaw\u0119\u017a regu\u0142\u0119 i przetestuj j\u0105 przed wdro\u017ceniem.u003c\/pu003e<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Tak, Googlebot potrafi crawlowa\u0107 po HTTP\/2. Domy\u015blnie jednak nadal u\u017cywa HTTP\/1.1 i przy ka\u017cdej wizycie sam wybiera wersj\u0119 protoko\u0142u. Dla [&hellip;]<\/p>\n","protected":false},"author":25,"featured_media":2203,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[182],"tags":[],"class_list":["post-2223","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-seo-pl"],"acf":[],"_links":{"self":[{"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/posts\/2223","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/users\/25"}],"replies":[{"embeddable":true,"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/comments?post=2223"}],"version-history":[{"count":1,"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/posts\/2223\/revisions"}],"predecessor-version":[{"id":2233,"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/posts\/2223\/revisions\/2233"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/media\/2203"}],"wp:attachment":[{"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/media?parent=2223"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/categories?post=2223"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jalvo.eu\/pl\/wp-json\/wp\/v2\/tags?post=2223"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}