Analiza log-urilor Apache și Nginx oferă informații despre comportamentul real al Googlebot pe site-ul dvs., informații care nu sunt disponibile în niciun alt instrument SEO. Log-urile arată exact ce pagini accesează Google, cu ce frecvență, ce erori întâlnește și câtă lățime de bandă consumă crawlul.
Spre deosebire de Google Search Console care arată ce a indexat Google, log-urile arată ce a încercat să acceseze, inclusiv paginile blocate sau cele care generează erori.
Analiza log-urilor Apache și Nginx pentru identificarea problemelor de crawl SEO
Fiecare cerere HTTP înregistrată în log-uri include informații esențiale: IP-ul clientului, data și ora, URL-ul accesat, codul de răspuns HTTP, dimensiunea răspunsului și user agent-ul. Pentru analiza SEO, filtrăm după user agent Googlebot.
Formatul log-urilor Apache și Nginx
Formatul implicit Combined Log al Apache arată astfel:
66.249.65.230 - - [15/May/2026:14:23:01 +0200] "GET /articol-seo/ HTTP/1.1" 200 45231 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
# Campuri:
# IP_client - - [data:ora +timezone] "METODA URL PROTOCOL" STATUS_CODE BYTES "REFERER" "USER_AGENT" Comenzi esențiale pentru analiza log-urilor
Filtrarea cererilor Googlebot
# Toate cererile Googlebot din log
grep "Googlebot" /var/log/nginx/access.log | wc -l
# Googlebot - ultimele 24 de ore
grep "Googlebot" /var/log/nginx/access.log | grep "$(date +'%d/%b/%Y')" | wc -l
# Top URL-uri accesate de Googlebot
grep "Googlebot" /var/log/nginx/access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head -30
# Googlebot pe coduri de status HTTP
grep "Googlebot" /var/log/nginx/access.log | awk '{print $9}' | sort | uniq -c | sort -rn Identificarea erorilor 404 crawlate de Google
# Pagini 404 accesate de Googlebot (prioritate de reparat)
grep "Googlebot" /var/log/apache2/access.log | grep '" 404 ' | awk '{print $7}' | sort | uniq -c | sort -rn | head -20
# Pagini 500 accesate de Googlebot (erori critice)
grep "Googlebot" /var/log/apache2/access.log | grep '" 500 ' | awk '{print $7}' | sort | uniq -c Analiza frecvenței crawlului pe zile
# Crawl-uri Googlebot per zi
grep "Googlebot" /var/log/nginx/access.log | awk '{print $4}' | cut -d: -f1 | tr -d '[' | sort | uniq -c
# Ore cu cel mai intens crawl
grep "Googlebot" /var/log/nginx/access.log | awk '{print $4}' | cut -d: -f2 | sort | uniq -c | sort -rn Analiza cu Python pentru date voluminoase
Comenzile bash sunt utile pentru analize rapide, dar pentru log-uri mari (GB) sau analize complexe, Python oferă mai multă flexibilitate.
import re
from collections import Counter, defaultdict
from datetime import datetime
GOOGLEBOT_RE = re.compile(r'Googlebot')
LOG_LINE_RE = re.compile(
r'(?P<ip>\S+) \S+ \S+ \[(?P<time>[^\]]+)\] "(?P<method>\S+) (?P<url>\S+) \S+" (?P<status>\d+) (?P<size>\S+) "(?P<referer>[^"]*)" "(?P<ua>[^"]*)"'
)
urls_404 = Counter()
urls_crawled = Counter()
with open('/var/log/nginx/access.log') as f:
for line in f:
if 'Googlebot' not in line:
continue
m = LOG_LINE_RE.match(line)
if not m:
continue
url = m.group('url').split('?')[0] # fara parametri
status = m.group('status')
urls_crawled[url] += 1
if status == '404':
urls_404[url] += 1
print("Top 20 URL-uri crawlate:")
for url, count in urls_crawled.most_common(20):
print(f" {count:5d}x {url}")
print("\nURL-uri 404 crawlate de Googlebot:")
for url, count in urls_404.most_common(20):
print(f" {count:5d}x {url}") Ce probleme dezvăluie log-urile
- Crawl wastage: Googlebot accesează masiv pagini fără valoare SEO (parametri URL, pagini admin)
- 404 crawlate: Linkuri sparte din alte site-uri sau din intern pe care Google încearcă să le acceseze
- Erori 500: Probleme de server care blochează indexarea paginilor importante
- Redirect loops: Lanțuri de redirecționări care consumă crawl budget inutil
- Pagini lente: URL-uri cu timp de răspuns ridicat care descurajează recrawlul
Instrumente specializate pentru analiza log-urilor SEO
- Screaming Frog Log File Analyser: Interfață grafică pentru analiza log-urilor, integrare cu Search Console
- Botify: Platformă enterprise pentru analiza crawl-ului la scară mare
- Sitebulb: Audit complet cu vizualizare a fluxului de crawl
- GoAccess: Analyzer open-source cu rapoarte în timp real, rulează direct pe server
# Instalare GoAccess pe Ubuntu/Debian
apt install goaccess -y
# Analiza in timp real
goaccess /var/log/nginx/access.log --log-format=COMBINED -o /var/www/html/report.html Concluzie
Analiza log-urilor este o practică SEO avansată care oferă perspective imposibil de obținut din alte surse. Dedicând câteva ore pentru configurarea unui workflow de analiză, obțineți date acționabile despre comportamentul real al crawlerelor pe site-ul dvs.
Echipa opti-seo.ro include analiza log-urilor în auditurile tehnice complete pentru site-uri cu trafic semnificativ.
Din practică
Am găsit în jurnalele serverului lucruri pe care nicio unealtă SEO nu le arată: pagini pe care Googlebot le cere de zeci de ori pe zi și pagini importante pe care nu le-a cerut de luni. Diferența asta nu se vede în rapoartele obișnuite.
În experiența mea, primul pas util e verificarea că boții care se prezintă drept Googlebot chiar sunt Googlebot. O bună parte din traficul acela e altceva, iar dacă îl luați ca atare, trageți concluzii greșite despre buget.
Am lucrat pe un site unde jumătate din accesări se duceau în pagini de filtrare generate de un plugin. Blocarea lor a eliberat accesările pentru paginile care aduceau bani.