RSS i Atom: stary format, który wciąż roznosi twoje treści
Dlaczego kanał wciąż ma znaczenie w 2026 roku, RSS 2.0 kontra Atom, jak sprawić, by dało się go znaleźć, i drobne błędy, przez które czytniki pokazują zeszłoroczny wpis jako nowy.
SEO · Opublikowano: 1 października 2026 · 5 min czytania · Ольга Мирошник
Kanał wygląda na relikt. Adresu feedu nikt już nie wpisuje w przeglądarkę, a większość właścicieli witryn ostatni raz myślała o swoim, kiedy CMS wygenerował go domyślnie. Mimo to kanał jest wciąż najtańszą maszynowo czytelną odpowiedzią na pytanie "co nowego na tej stronie", a pyta o to zaskakująco wielu.
Kto go naprawdę czyta
- Czytniki RSS — Feedly, Inoreader, NetNewsWire, Miniflux. Korzysta z nich dokładnie ta techniczna publiczność, która o tobie pisze i do ciebie linkuje.
- Agregatory, które zbierają nagłówki z dziesiątek źródeł.
- Automatyzacja: przepisy IFTTT i Zapier, newslettery składane z najnowszych wpisów, boty w Slacku i Telegramie ogłaszające każdy wpis na kanale.
- Syndykacja na wzór podcastów: jeden adres, wielu subskrybentów, każdy odpytuje go we własnym rytmie.
- Wyszukiwarki i narzędzia AI szukające świeżych treści. Kanał to zwarta lista nowych adresów z datami, znacznie tańsza do pobrania niż crawl.
Z WebSub kanał potrafi nawet wypychać zmiany: przy publikacji pingujesz hub, a subskrybenci dostają aktualizację w kilka sekund, a nie przy następnym odpytaniu.
RSS 2.0 czy Atom 1.0
RSS 2.0 jest bardziej rozpowszechniony i rozumie go każdy konsument. Atom 1.0 jest surowszy i lepiej wyspecyfikowany: id i updated są obowiązkowe w każdym wpisie, treść deklaruje swój typ (text, html, xhtml) zamiast zostawiać klientowi zgadywanie, a xml:base nadaje względnym odwołaniom określone znaczenie. Oba są w porządku. Wybierz jeden i zrób go porządnie — poprawny RSS jest lepszy niż w połowie poprawny Atom.
Niech da się go znaleźć
Kanał, na który nic nie wskazuje, nie istnieje. Zadeklaruj go w <head> każdej strony, nie tylko na liście wpisów:
<link rel="alternate" type="application/atom+xml"
title="Blog SiteScan" href="/pl/blog/feed.xml">
Czytniki i rozszerzenia przeglądarek szukają właśnie tego tagu. Sam plik serwuj z pasującym typem — application/atom+xml lub application/rss+xml, a nie text/html.
Co w środku
Wszędzie adresy bezwzględne. Kanał czyta się poza twoją witryną, więc /blog/post nie wskazuje na nic. Dotyczy to też linków i obrazów wewnątrz treści.
Stabilne id wpisów. Po id czytnik poznaje, że wpis już widział. Zmień je — nowa domena, nowy schemat adresów, http na https — a każdy subskrybent zobaczy całe archiwum jako nowe. Do tego służą w Atomie tag URI:
<id>tag:sitescan.top,2026:blog/rss-atom-feeds</id>
Uczciwe daty. updated zmienia się przy zmianie treści, a nie przy każdym buildzie.
Pełna treść czy zajawka. Pełna treść jest wygodniejsza dla czytelnika, zajawka sprowadza ludzi na stronę. Oba podejścia są w porządku — byle zajawka miała sens, a nie była pierwszymi 200 znakami uciętymi w pół słowa.
Ostatnie N wpisów. Dwadzieścia do pięćdziesięciu w zupełności wystarczy. Kanał to okno na niedawne zmiany, nie archiwum, a plik ważący 5 MB pobiera każdy subskrybent co godzinę.
Osobny kanał dla każdego języka. Witryna wielojęzyczna nie powinna mieszać języków w jednym strumieniu. Daj każdemu językowi własny kanał i deklaruj właściwy na stronach w tym języku.
Typowe błędy
- Kanał istnieje, ale żadna strona do niego nie linkuje.
- Względne adresy w linkach i treści.
- Zepsuty XML przez jeden nieescapowany
&w tytule. Parser odrzuca cały dokument, a nie tylko ten wpis. - Daty w złym formacie: RSS wymaga RFC 822 (
Wed, 01 Oct 2026 09:00:00 GMT), Atom — RFC 3339 (2026-10-01T09:00:00Z). - Po migracji CMS-a adres kanału zwraca 404 i wszyscy subskrybenci po cichu cię tracą.
- Kanał stoi za wyzwaniem ochrony przed botami, więc czytniki dostają stronę HTML zamiast XML.
Jak robi to ten blog
Raport SiteScan pokazuje, czy strona deklaruje kanał, w wierszu "RSS / Atom feed". To pozycja opcjonalna, pokazywana jako fakt, a nie kara: wiele witryn po prostu nie ma powodu go publikować. Ten blog ma — teraz osobny kanał Atom dla każdego języka: /blog/feed.xml, /ru/blog/feed.xml, /pl/blog/feed.xml i /de/blog/feed.xml, każdy zadeklarowany w head stron w danym języku.
Lista kontrolna
- Wybierz RSS 2.0 lub Atom 1.0 i zwaliduj wynik.
- Zadeklaruj kanał przez
<link rel="alternate">na każdej stronie. - Serwuj go z poprawnym Content-Type i bez wyzwania przed nim.
- Używaj adresów bezwzględnych i id, które nigdy się nie zmieniają.
- Zapisuj daty w formacie, którego wymaga twój format kanału.
- Trzymaj ostatnie 20–50 wpisów, jeden kanał na język.
- Po każdej migracji pobierz stary adres kanału i upewnij się, że wciąż odpowiada 200 albo przekierowuje.
Przeczytaj także
Sprawdź, ile z tego dotyczy Twojej strony
Darmowe skanowanie pokaże uszkodzone linki, błędy JS i problemy z wydajnością w minutę.