Cos'è il redirect per geolocalizzazione
Redirect a una versione regionale in base alla posizione dell'utente. Simile a quello basato su IP ma più preciso. Il redirect per geolocalizzazione usa il GPS o la Geolocation API del browser per determinare la posizione dell'utente.
Metodi di rilevamento
- GPS — accuratezza molto alta, richiede il permesso
- Geolocation API — alta, richiede il permesso
- Indirizzo IP — media (città), nessun permesso
- Accept-Language — bassa, nessun permesso
Esempio di Geolocation API
javascript
// Request geolocation
navigator.geolocation.getCurrentPosition(
(position) => {
const lat = position.coords.latitude;
const lon = position.coords.longitude;
// Determine country from coordinates
fetch(`/api/geo?lat=${lat}&lon=${lon}`)
.then(res => res.json())
.then(data => {
if (data.country === 'DE' && !isGermanVersion()) {
showLanguageSuggestion('de');
}
});
},
(error) => {
// Fallback to IP-based detection
detectByIP();
}
);Implementazione SEO-safe
- Chiedi il permesso — l'utente deve acconsentire
- Banner, non redirect — proponi il cambio di versione
- Tutte le versioni accessibili — tramite URL diretti
- Niente cloaking — i bot vedono tutte le versioni
Approccio UX
- 1. L'utente atterra sul sito
- 2. Il sito chiede la geolocalizzazione (facoltativo)
- 3. Se consentita → rileva il paese
- 4. Mostra un banner: «Sei in Germania. Passi alla versione tedesca?»
- 5. Scelta dell'utente → salvata in localStorage
- 6. Selettore lingua sempre disponibile
Non reindirizzare automaticamente in base alla geolocalizzazione senza avviso: può infastidire gli utenti ed essere considerato cloaking se i bot vedono una versione e gli utenti un'altra. Usa un banner o un suggerimento in pop-up.
FAQ
Qual è il vantaggio della Geolocation API rispetto al rilevamento via IP?
La Geolocation API può individuare la posizione esatta (fino al livello della strada), mentre l'IP di solito dà solo paese o città con un margine d'errore. Ma l'API richiede il permesso esplicito dell'utente.
Il redirect per geolocalizzazione viola le linee guida di Google?
Se mostri ai bot e agli utenti la stessa versione della pagina (niente cloaking), va bene. Suggerisci il cambio di regione tramite banner, non con un redirect automatico.
Come gestiscono i crawler di ricerca i redirect da geolocalizzazione?
I bot di solito non concedono il permesso di geolocalizzazione, quindi vedranno la versione predefinita. Va bene così: la chiave è non reindirizzare i bot.
Serve hreflang insieme al redirect per geolocalizzazione?
Sì, hreflang è obbligatorio perché Google associ correttamente le versioni lingua/regione. La geolocalizzazione è per la comodità dell'utente, hreflang per i motori di ricerca.
Come ricordare la scelta dell'utente per le visite future?
Conserva la versione scelta in localStorage o in un cookie. Ai caricamenti successivi non chiedere di nuovo la geolocalizzazione: usa subito la versione salvata.