Seo&Social Media

Fix errori 404 nei Google Webmaster Tools (usg parameter)

Condividi!

Chiunque sia possessore di un blog o di un qualsiasi altro genere di sito si sarà sicuramente iscritto ai noti Google Webmaster Tools che permettono di monitorare e avere informazioni utili per capire dove sono i problemi nel sito e dove sono i punti di forza, le chiavi di ricerca più adottate, il numero di impressions nelle ricerche,etc.

Non controllavo il mio da qualche tempo, circa 3 mesi, e tornandoci oggi ho visto un numero elevato di errori “404 Not Found” per il blog, per la precisione 922. Ho pensato che probabilmente era dovuto all’installazione di un qualche nuovo plugin che altera i permalink ma andando a verificare nel dettaglio degli “Errori di scansione” ho visto che si trattava di altro.

Errori 404 nei Google Webmaster Tools

Il problema scaturiva da due parametri che venivano passati al blog che prima di agosto 2012  non erano mai stati inviati. I parametri in questione sono: langusg.

Il primo, lang, come si deduce dal nome ha come valore la lingua e il secondo, usg, di cui non si sa nulla. In questo approfondito articolo sui singoli parametri utilizzati da Google nell’indicizzazione dei siti usg rimane avvolto nel mistero.

Al di là del significato e dell’utilizzo di questi due parametri a noi webmaster interessa che Google non veda errori sul nostro sito e che indicizzi tutto.

Esempi di url con i parametri lang e usg

Per risolvere il problema ho deciso di utilizzare delle regole di redirect nel file .htaccess. Ho analizzato gli url che risultavano in errore e erano tutti quelli facenti riferimento alle categorie e ai tag.

Ho così aggiunto le seguenti righe nel file .htaccess:

# GOOGLE FIX START
RewriteRule ^(.*)/&lang=(.*)&usg=(.*)$ $1 [L,R=301]
RewriteRule ^index.php/(.*)/(.*)&lang=(.*)&usg=(.*)$ /$1/$2/ [L,R=301]
RewriteRule ^index.php/&lang=(.*)&usg=(.*)$ /index.php [L,R=301]
# GOOGLE FIX END

In questo modo tutte le richieste che faranno riferimento a una sottocartella come tag nell’esempio:

http://www.websec.it/tag/ohio-state-university-banda/&lang=it&usg=ALkJrhiVY5OSCvyKVzhOVjssuxWFlbacBg

verranno redirettati al corrispondente url privo dei parametri di Google lang e usg

http://www.websec.it/tag/ohio-state-university-banda

Il mio .htaccess completo delle normali regole di WordPress è quindi il seguente:

# BEGIN WordPress

RewriteEngine On
RewriteBase /
# GOOGLE FIX START
RewriteRule ^(.*)/&lang=(.*)&usg=(.*)$ $1 [L,R=301]
RewriteRule ^index.php/(.*)/(.*)&lang=(.*)&usg=(.*)$ /$1/$2/ [L,R=301]
RewriteRule ^index.php/&lang=(.*)&usg=(.*)$ /index.php [L,R=301]
# GOOGLE FIX END
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

Appena Google farà nuovamente la scansione dei link posterò le immagini aggiornate dei Google Webmaster Tools. Per ora posso garantirvi (e potrete provare da soli) che in questo modo i link tornano funzionanti.

Se avete avuto anche voi la stessa problematica testate questa soluzione e in caso di problemi scriveteci.

Click to comment
To Top