Come fare un redirect con HTML?

(*5*)
  • CommentaScrivi un commento
  • (*15*)Discussion boardDiscuti sul discussion board
  • PrecedenteCome aggiungere didascalie alle immagini in HTML 5?

Redazione

Esistono numerous tecniche in line with redirezionare automaticamente gli utenti. Normalmente le tecniche di redirect più utilizzate coinvolgono Javascript oppure linguaggi server-side come PHP o ASP. In realtà, in line with fare un semplice redirect, non è necessario scomodare linguaggi di scripting. Sfruttando i metatag, infatti, è possibile effettuare redirect sia immediati che temporizzati in puro HTML.

Prima di addentrarci nel codice, tuttavia, è opportuna una premessa di carattere generale.

Indice

[ nascondi ]

Cos’è un redirect?

Un redirect è una operazione automatica effettuata dalla risorsa internet richiesta che invece di mostrare il proprio contenuto, effettua un redirezionamento dell’utente su un’altra risorsa internet. In pratica l’utente chiede di visualizzare l. a. risorsa “A” ma questa, in modo automatico, lo trasferisce sulla risorsa “B”.

Quando si utilizza un redirect?

Le casistiche di utilizzo dei redirect sono molteplici. Le più frequenti sono:

  • l. a. pagina internet cercata non esiste più in quanto rimossa;
  • oppure l. a. pagina internet è stata spostata su un nuovo indirizzo internet.

In questi casi può essere utile prevedere un redirect al wonderful di non a long way atterrare l’utente su una pagina di errore 404 che comporterebbe un maggior rischio di fuga dal sito (con l’effetto di avere una dispersione di traffico potenzialmente utile).

Continua dopo l. a. pubblicità…

Oltre ai casi citati, i redirect possono rivelarsi utili anche in altre circostanze, advert esempio se si vuole spostare l’utente al verificarsi di un determinato evento come, advert esempio, il semplice passare del pace o l. a. selezione di una voce di un menu di selezione.

Sintassi dei redirect in puro HTML

Los angeles sintassi dei redirect HTML prevede l’utilizzo del tag <meta> all’interno della sezione <head> della pagina. Questo tag deve essere utilizzato in combinazione con l’attributo http-equiv che dovrà avere come valore “refresh” (si tratta dello stesso metatag utilizzato in line with gestire i refresh di pagina). Nell’attributo content material, invece, dovrà essere indicata una cadenza temporale (in secondi) separata, tramite un punto e virgola, dall’indicazione di una URL. Vediamo un esempio:

<meta http-equiv="refresh" content material="0;URL=http://www.miosito.com/nuova-pagina.html">

Nel nostro esempio il redirect è immediato (l’attesa è impostata a 0) pertanto l’utente verrà redirezionato alla pagina indicata senza nemmeno visualizzare i contenuti della pagina HTML che contiene il metatag in questione (ne consegue, quindi, che l. a. pagina può essere lasciata vuota).

E’ evidente che variando (aumentando) il valore numerico dei secondi di attesa è possibile gestire altrettanto semplicemente un redirect temporizzato, cioè un redirect dell’utente non immediato ma che si realizza dopo tot secondi dal caricamento della pagina che contiene il metatag. Vediamo un esempio di redirect HTML con temporizzazione a 15 secondi:

<meta http-equiv="refresh" content material="15;URL=http://www.miosito.com/nuova-pagina.html">

In questo caso, di solito, si inserisce un messaggio di avviso nel frame della pagina. Ecco un esempio di pagina di redirect temporizzato con avviso all’utente:

<html> <head> <name>Pagina di Redirect</name> <meta http-equiv="refresh" content material="15;URL=http://www.miosito.com/nuova-pagina.html"> </head> <frame> <p> Tra 15 secondi avverrà un redirect automatico alla nuova pagina.<br> Se non vuoi aspettare <a href="http://www.miosito.com/nuova-pagina.html">clicca qui</a>. </p> </frame>
</html>

Redirect 301 in HTML

Purtroppo le tecniche di redirect basate sull’utilizzo di HTML o di linguaggi lato consumer (come Javascript) hanno un grosso limite: non è possibile impostare redirect 301. Attraverso HTML, infatti, non possiamo agire sullo scambio di informazioni tra server e consumer a livello di protocollo HTTP e pertanto non è possibile settare l’intestazione “301 Moved completely”. Qualora vi sia story esigenza, pertanto, si rende necessario l’utilizzo di tecniche di redirect basate su linguaggi lato server come PHP.

In keeping with una trattazione completa sulle tecniche attraverso le quali implementare un redirect permanente di tipo 301 si consulti questa guida.