Redirect per geolocalizzazione

Il redirect per geolocalizzazione è una tecnica che reindirizza automaticamente il visitatore alla versione regionale o linguistica appropriata di un sito usando i dati della sua posizione fisica (tipicamente tramite la Geolocation API del browser).

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.