206 Partial Content

« Powrót do listy pojęć

206 Partial Content to kod odpowiedzi HTTP, który serwer zwraca w sytuacji, gdy klient poprosił o pobranie tylko określonego fragmentu zasobu — nie całego pliku. Odpowiedź ta jest normalną i pożądaną częścią protokołu HTTP/1.1, opisaną w RFC 7233. Stosuje się ją przede wszystkim przy przesyłaniu dużych plików multimedialnych, obsłudze pobierań z przerwaniem oraz strumieniowaniu wideo.

  • 206 to odpowiedź na żądanie zawierające nagłówek Range, nie błąd serwera.
  • Umożliwia pobieranie pliku od konkretnego bajtu, bez ponownego ściągania całości.
  • Fundamentalne znaczenie dla odtwarzaczy wideo, podcastów i menedżerów pobierania.
  • Serwer musi obsługiwać zakresy bajtów (Accept-Ranges: bytes), by odpowiedź 206 była możliwa.

Jak 206 Partial Content działa w praktyce

Żądanie zakresu bajtów — jak klient informuje serwer

Klient wysyła żądanie HTTP z nagłówkiem Range, wskazując dokładnie, które bajty pliku go interesują. Gdy użytkownik przewija wideo na YouTube do minuty 4:30, przeglądarka nie pobiera całego pliku od nowa — wysyła nowe żądanie z zakresem odpowiadającym tej pozycji czasowej. Serwer odpowiada kodem 206 i przesyła wyłącznie ten fragment.

Przykładowe żądanie wygląda następująco:

GET /film.mp4 HTTP/1.1
Host: example.com
Range: bytes=1048576-2097151

Serwer odpowiada nagłówkiem Content-Range: bytes 1048576-2097151/10485760, informując jednocześnie o całkowitym rozmiarze pliku.

Czym różni się 206 od 200 OK?

Odpowiedź 200 OK oznacza, że serwer przesyła pełny zasób — każdy bajt pliku od początku do końca. Kod 206 sygnalizuje celowe, częściowe dostarczenie treści, poprzedzone świadomym żądaniem klienta. Różnica jest fundamentalna z punktu widzenia buforowania i wznawiania pobierań: menedżer plików, który otrzymał 206, wie, że może zapisać fragment i kontynuować pobieranie od tego miejsca po przerwie.

Cecha200 OK206 Partial Content
Zawartość odpowiedziCały zasóbFragment zasobu
Nagłówek Range w żądaniuBrak lub zignorowanyWymagany i obsłużony
Nagłówek Content-RangeNieobecnyZawsze obecny
Typowe zastosowanieHTML, obrazki, pliki tekstoweWideo, audio, duże archiwa
Możliwość wznowienia pobieraniaNieTak

Wieloczęściowe odpowiedzi — multipart/byteranges

Protokół HTTP pozwala na jednoczesne żądanie kilku niesąsiadujących fragmentów w ramach jednego żądania. Serwer odpowiada wtedy typem Content-Type: multipart/byteranges, pakując każdy zakres jako osobną część odpowiedzi. W praktyce tę funkcję obsługują przede wszystkim zaawansowane odtwarzacze strumieniowe i techniki Adaptive Bitrate Streaming (ABR), jak HLS czy DASH.

Kiedy serwer odmawia obsługi zakresów?

Jeśli serwer nie obsługuje zakresów bajtów, odpowiada nagłówkiem Accept-Ranges: none i zwraca kod 200 z pełnym zasobem, ignorując żądanie Range. Część serwerów — szczególnie te za reverse proxy lub CDN ze specyficzną konfiguracją — może blokować obsługę zakresów dla plików poniżej określonego rozmiaru, co spowalnia ładowanie mediów na stronach.

Chcesz sprawdzić, czy Twój serwer poprawnie obsługuje żądania Range? Skonsultuj się z ekspertami Webiti. W ramach audytu technicznego sprawdzamy m.in. konfigurację odpowiedzi HTTP wpływającą na wydajność i Core Web Vitals. 👉 Poproś o darmową konsultację

Znaczenie dla SEO i widoczności

Prawidłowa obsługa kodu 206 wpływa bezpośrednio na wskaźniki Core Web Vitals, szczególnie na Largest Contentful Paint (LCP), gdy głównym elementem strony jest wideo lub duże zdjęcie pobierane progresywnie. Google traktuje szybkość ładowania mediów jako jeden z sygnałów rankingowych od czasu wdrożenia Page Experience Update w 2021 roku. Strona, której serwer poprawnie obsługuje zakresy bajtów, umożliwia przeglądarce równoległe pobieranie fragmentów zasobu, co przyspiesza renderowanie.

Z perspektywy crawl budget odpowiedź 206 nie powinna pojawiać się w logach Googlebot dla zasobów HTMLbot pobiera strony w całości i żądania zakresów mogą sygnalizować nieprawidłową konfigurację serwera lub problemy z proxy. Natomiast dla plików wideo osadzonych na stronie prawidłowe kody 206 oznaczają, że infrastruktura działa efektywnie. Podczas audytu SEO analiza logów serwera pozwala wykryć serwery, które błędnie odpowiadają 200 zamiast 206 przy żądaniach Range — co bezpośrednio wydłuża czas buforowania filmów i zwiększa współczynnik porzuceń.

Obsługa 206 ma znaczenie także w kontekście pozycjonowania stron zawierających treści wideo, podcasty lub do pobrania — Google Video Search i indeksowanie rich results dla wideo działają sprawniej, gdy pliki są serwowane z prawidłową obsługą zakresów.

Wskazówka eksperta SEO z Webiti: Częsty błąd w projektach e-commerce: serwery plików graficznych i wideo skonfigurowane za load balancerem zwracają 200 zamiast 206, bo load balancer nie przepuszcza nagłówka Range do backendu. Efekt? Przeglądarka musi pobrać cały obraz przed wyświetleniem — LCP rośnie o kilkaset milisekund. Sprawdź to narzędziem curl: curl -I -H "Range: bytes=0-1" https://twojastrona.pl/plik.mp4 — w odpowiedzi powinno pojawić się “206 Partial Content”, nie “200 OK”.

FAQ

Czy kod 206 to błąd serwera?

Nie — kod 206 Partial Content to odpowiedź informacyjna o poprawnym działaniu, nie błąd. Kody błędów zaczynają się od cyfry 4 (błędy klienta, np. 404) lub 5 (błędy serwera, np. 500). Kod 206 należy do grupy 2xx, oznaczającej pomyślne przetworzenie żądania. Pojawienie się 206 w logach serwera przy plikach multimedialnych to sygnał, że infrastruktura działa prawidłowo.

Jak sprawdzić, czy mój serwer obsługuje Partial Content?

Najprostszy sposób to wywołanie żądania z nagłówkiem Range za pomocą narzędzia curl w terminalu: curl -I -H "Range: bytes=0-100" https://twojastrona.pl/video.mp4. Jeśli serwer obsługuje zakresy, w odpowiedzi zobaczysz status 206 i nagłówek Content-Range. Brak obsługi objawia się odpowiedzią 200 z pełnym plikiem lub kodem 416 Range Not Satisfiable przy nieprawidłowym zakresie.

Czym różni się 206 od kodu 416?

Kod 416 Range Not Satisfiable to odpowiedź błędu zwracana wtedy, gdy klient żąda zakresu wykraczającego poza rzeczywisty rozmiar pliku — na przykład prosi o bajty 5000–6000 w pliku liczącym tylko 4000 bajtów. Kod 206 pojawia się, gdy zakres jest prawidłowy i serwer może go obsłużyć. Te dwa kody są ze sobą powiązane — oba dotyczą mechanizmu Range Requests, ale 416 sygnalizuje błąd po stronie klienta, a 206 sukces.

Kiedy stosowanie 206 jest niezbędne?

Obsługa kodu 206 jest niezbędna wszędzie tam, gdzie użytkownicy mają możliwość przewijania treści przed pełnym załadowaniem: odtwarzacze wideo i audio, pliki do pobrania powyżej kilku megabajtów oraz aplikacje Progressive Web App korzystające z Service Workers do buforowania zasobów. Brak wsparcia dla zakresów w tych scenariuszach oznacza konieczność ponownego pobierania całego zasobu po każdej przerwie w połączeniu.

Od teorii do praktyki — co warto zrobić ze zdobytą wiedzą

Obsługa kodu 206 Partial Content to jeden z technicznych detali, który oddziela sprawnie działającą infrastrukturę od tej, która marnuje przepustowość i irytuje użytkowników. Weryfikacja tej konfiguracji zajmuje kilka minut, a jej brak może kosztować pozycje w wynikach wyszukiwania przez słabsze wyniki Core Web Vitals. Jeśli chcesz mieć pewność, że Twoja strona nie traci widoczności przez ukryte problemy techniczne, zespół Webiti przeprowadzi pełny audyt infrastruktury i konfiguracji serwera.

Masz wątpliwości, czy Twój serwer odpowiada prawidłowymi kodami HTTP? Eksperci Webiti przeanalizują konfigurację Twojej infrastruktury, wykryją problemy wpływające na Core Web Vitals i zaproponują konkretne poprawki.

👉 Zamów darmowy audyt techniczny SEO

Ocena

Średnia ocena: 0 / 5. Liczba ocen: 0

Darmowa wycena

Scroll to Top

Poleć klienta na SEO/GEO

Sprawdźmy, jak widzi Cię Google i AI