Wyjaśnienie IndexNow – powiadamianie silników wyszukiwania o publikacji treści
Po wdrożeniu wyślij zaktualizowane URL do wyszukiwarek.
Strony statyczne i blogi zmieniają się przy każdym wdrożeniu. Silniki wyszukiwania obsługujące IndexNow mogą dowiedzieć się o tych zmianach bez czekania na kolejną ślepą indeksację.
Ta strona wyjaśnia, dlaczego to jest ważne, co robi ten protokół oraz jak zintegrować go z rzeczywistym procesem pracy, w tym wzorce, które możesz wykorzystać we własnej automatyzacji lub w małym CLI napisanym w Go.

Dlaczego używać IndexNow na stronie statycznej lub Hugo
Jeśli wdrażasz Hugo do S3 lub podobnych usług, już wysyłasz HTML oraz plik sitemap.xml. Roboty w końcu odczytają mapę witryny, ale nie masz kontroli nad czasem. Po migracji lub po dodaniu partii nowych postów zależy Ci na świeżym zaindeksowaniu, a nie na tym, że stanie się to “kiedyś w przyszłym tygodniu”.
IndexNow to kanał push. Wysyłasz metodą POST listę kanonicznych URL, które są dla Ciebie ważne. Uczestniczące silniki (w tym Microsoft Bing i inne wymienione na stronie indexnow.org) mogą nadać priorytet pobieraniu tych URL. Nie zastępuje to dobrych przekierowań URL ani linkowania wewnętrznego, ale zamyka pętlę między git push a świadomością silnika wyszukiwania.
Co robi IndexNow
Na wysokim poziomie każde zgłoszenie to HTTPS POST z JSONem, który koncepcyjnie wygląda tak:
host– nazwa hosta Twojej witryny (np.www.example.com)key– wygenerowany wcześniej tajny ciąg znakówkeyLocation(opcjonalnie) – pełny URL pliku weryfikacyjnego, jeśli nie znajduje się on w domyślnej ścieżceurlList– jeden lub więcej absolutnych URL na tym hostcie, o które chcesz poinformować
Silniki odrzucają błędne klucze, niepoprawne hory lub niepoprawnie sformatowane obciążenia. Sukces zazwyczaj oznacza kod HTTP 200 lub 202, w zależności od endpointu.
Pełne zasady i listę partnerów możesz znaleźć na oficjalnej stronie. Ważny model myślowy to dowód własności domeny za pomocą pliku tekstowego plus wyraźna lista URL, a nie słowa kluczowe lub zawartość stron.
Jak przygotować swoją witrynę
Plik klucza i nazwa hosta
- Wybierz klucz – długi losowy ciąg znaków (traktuj go jak sekret).
- Opublikuj
https://twoj-domena/<key>.txtz wyłącznie kluczem jako treścią (jedna linia). - Użyj tego samego klucza w swoim CLI lub automatyzacji podczas wysyłania POST.
- Prześlij tylko URL na tym hostcie, które chcesz ponownie zindeksować (nowe posty, zaktualizowane strony lub docelowe przekierowania).
Po przesunięciu wielu URL naraz możesz chcieć wysyłać powiadomienia partiami. IndexNow akceptuje wiele URL w jednym żądaniu, z zastrzeżeniem limitów każdego silnika.
Sposoby przesyłania URL
- Ręczny POST – dobry do debugowania, użyj
curlz JSONem. - Wtyczki – niektóre CMS-y i panele hostingowe zawierają przełączniki IndexNow.
- Twój skrypt wdrażania – po wykonaniu
hugoi przesłaniu plików wywołaj mały program binarny z listą zmienionych URL lub adresem Twojej mapy witryny.
W przypadku przepływu pracy Hugo naturalnymi wyzwalaczami są “po budowie” lub “po synchronizacji z kubełkiem”. Przekazuj pełne URL HTTPS, które pasują do Twojej aktywnej witryny, w tym www lub wersję bez www, jeśli to tak serwujesz.
Małe CLI w Go (opcjonalnie)
Funkcje, które możesz zaimplementować
Minimalne narzędzie linii poleceń w Go pasuje do IndexNow, ponieważ obciążenie to mały JSON POST, a można je zintegrować ze skryptami wdrażania. Typowy projekt obejmuje:
- Pojedyncze lub wiele URL jako argumenty pozycyjne
--sitemapdo pobraniasitemap.xmli przesłania każdego<loc>(z opcjonalnym--limit)- Wiele silników równolegle poprzez
--engines(np.indexnowdla globalnego agregatora lub endpointy dla każdego dostawcy) - Flagi lub zmienne środowiskowe, takie jak
INDEXNOW_KEY,INDEXNOW_WEBSITE_URLorazINDEXNOW_ENGINES - Rozszerzony output z
-vdo debugowania odpowiedzi 403 lub 422
Zbuduj za pomocą go build lub go install, zainstaluj binarkę na swojej ścieżce PATH, a następnie wywołaj ją po publikacji:
indexnow --key TWOJ_KLUCZ --website https://www.example.com https://www.example.com/new-post/
W przypadku pełnej odświeżenia witryny po wdrożeniu możesz przekazać --sitemap wraz z adresem publicznej mapy witryny. Udokumentuj kody odpowiedzi i listy silników we własnym README, a obok skryptu uruchamiającego wdrożenie statyczne umieść fragment powłoki realizujący publikację, a następnie indeksację.
Post Best LLMs for OpenCode - tested locally użył “zaimplementuj notyfikator IndexNow w Go” jako benchmarku kodowania – przydatne, jeśli chcesz zobaczyć, jak różne modele radzą sobie z tą samą specyfikacją i zadaniami strukturalnymi.
Praktyczne wskazówki
- Wolę docelowy silnik
indexnow, gdy chcesz, aby jedno zgłoszenie rozchodziło się przez wspólną infrastrukturę (zobacz searchengines.json i lustruj tę listę we własnym kliencie, jeśli obsługujesz wiele endpointów). - 429 oznacza zwolnij. 403 zazwyczaj oznacza niepasujący klucz lub nazwa hosta. Najpierw napraw lokalizację pliku klucza lub nazwę hosta.
- IndexNow nie zastępuje przekierowań 301, gdy zmieniasz ścieżki. Powiadom po tym, jak przekierowania staną się aktywne.
Zobacz też
- Infrastruktura sieciowa – pełny klastr do wdrażania stron statycznych i indeksowania
- Best LLMs for OpenCode - tested locally – zawiera benchmark kodowania w świecie rzeczywistym wokół tego protokołu
- Wdrożenie strony Hugo do AWS S3 – przepływ wdrażania, gdzie pasują haki post-publikacji
- Oficjalny protokół – indexnow.org