Robots.txt kontroluje crawlowanie strony przez boty. Źle skonfigurowany może zablokować indeksację lub marnować crawl budget.
Czym jest robots.txt
Robots.txt to plik tekstowy w root domeny (example.com/robots.txt) zawierający instrukcje dla crawlerów.
Podstawowa składnia
# Komentarz
User-agent: *
Disallow: /admin/
Allow: /admin/public/
Sitemap: https://example.com/sitemap.xml
Dyrektywy
| Dyrektywa | Znaczenie |
|---|---|
| User-agent | Dla którego bota są reguły |
| Disallow | Blokuj crawlowanie |
| Allow | Zezwól (override Disallow) |
| Sitemap | Lokalizacja sitemap |
| Crawl-delay | Opóźnienie między requests (nie Google) |
User-agents
Główne crawlery
-
Googlebot- główny crawler Google -
Googlebot-Image- crawler obrazów -
Bingbot- Microsoft Bing -
facebookexternalhit- Facebook sharing -
Twitterbot- Twitter cards -
*- wszystkie boty
Przykłady robots.txt
E-commerce (Shopify)
User-agent: *
Disallow: /admin
Disallow: /cart
Disallow: /checkout
Disallow: /account
Disallow: /search
Disallow: /*?*sort=
Disallow: /*?*filter=
Disallow: /*?*variant=
Disallow: /collections/*+*
Allow: /collections/
Allow: /products/
Sitemap: https://example.com/sitemap.xml
WordPress
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /wp-includes/
Disallow: /wp-content/plugins/
Disallow: /wp-content/cache/
Disallow: /author/
Disallow: /tag/
Disallow: /*?s=
Disallow: /*?p=
Disallow: /page/
Sitemap: https://example.com/sitemap_index.xml
Wildcard patterns
"Google obsługuje * (wildcard) i $ (end of URL) w robots.txt." - Google Developers
| Pattern | Znaczenie |
|---|---|
| /folder/ | Wszystko zaczynające się od /folder/ |
| /*? | URL z parametrami query |
| /*.pdf$ | Pliki PDF |
| /*/feed/ | Wszystkie feedy RSS |
Typowe błędy
1. Blokowanie CSS/JS
NIE RÓB:
Disallow: /wp-content/
Disallow: /assets/
Google potrzebuje CSS/JS do renderowania!
2. Blokowanie całej strony
User-agent: *
Disallow: /
Blokuje WSZYSTKO - używaj ostrożnie.
3. Mieszanie Disallow i noindex
Disallow ≠ noindex!
- Disallow - blokuje crawlowanie, ale strona może być w indeksie
- noindex - usuwa z indeksu, ale wymaga crawlowania
Testowanie robots.txt
Narzędzia
- Google Search Console - robots.txt Tester (legacy)
- robots.txt validator - technicalseo.com
- Screaming Frog - Configuration > robots.txt
Allow vs Disallow precedence
Google używa most specific rule:
Disallow: /folder/
Allow: /folder/allowed-page
/folder/allowed-page będzie crawlowane.
Crawl-delay
Nie wspierany przez Google, ale przez Bing:
User-agent: Bingbot
Crawl-delay: 10
Google używa GSC > Settings > Crawl rate.
Dynamiczny robots.txt
Można serwować różny robots.txt na podstawie:
- Environment (staging vs production)
- Kraju
- User-agent
Ale zachowaj ostrożność - może wprowadzić w błąd.
Podsumowanie
Robots.txt to potężne narzędzie kontroli crawlowania. Używaj dla crawl budget optimization, ale pamiętaj: Disallow ≠ noindex.