• User

    Da blogger a sito: 301 dei poveri

    Ciao,

    ne stavo discutendo con Tagliaerbe.

    Il problema è nato da quando ho deciso di spostare il mio blog da blogger ad un sito registrato a mio nome.

    Io di base faccio il programmatore e mi è sembrato doveroso inserire un banalissimo redirect javascript, ma tagliaerbe mi ha sgridato tantissimo suggerendomi la tecnica del 301.

    Detta tecnica (se non si dispone di linguaggi server side) sconsiglia il js e se prorio non c'è altro consiglia un metatag del tipo:

    <META HTTP-EQUIV=Refresh CONTENT="0; URL=http://www.nuovosito.it">

    La mia necessità però non era quella di fare un redirect così pedissequo ma di fare in modo che un indirizzo tipo:

    nomeblog.blogspot.com/pippo.htm

    diventasse

    www.nomeblog.it/pippo.htm

    Ho scritto quindi un banale script che crea una commistione tra JS e meta-tag, ovvero:

    <script type="text/javascript">
    u=document.URL
    p=u.lastIndexOf('blogspot.com');
    if (p > 0) {

    alert('Il blog si è spostato su [www.nomeblog.it](http://www.nomeblog.it)  ');
    
    u=u.replace('nomeblog.blogspot.com','www.nomeblog.it');
    u=u.replace('www.www','www'); //-<-- questo perchè qcuno scriveva [www.nomeblog.blogspot.com](http://www.nomeblog.blogspot.com)
    
    //document.location.href=u; <-- questo era il redirect sconsigliatissimo
    

    document.write('<META HTTP-EQUIV=Refresh CONTENT="0; URL='+u+'">');
    }
    </script>

    Bene.

    Tutto ciò solo per sapere: quanto è sconsigliabile una "tecnica" di questo genere ?


  • User Attivo

    Redirect via meta restituisce un code 302.

    Se il redirect ha come tempo di redirect 0 allora i motori normalmente considerano quel 302 code come fosse un 301.

    Detto cio' bisognerebbe discutere come si debba usare un redirect 301.

    Il 301 ha valore se da vecchio contenuto mi muovo verso lo stesso contenuto ma messo in un'url diversa.

    Url vecchia che punta via 301 ad url nuovo ma con contenuto differente non vale nulla.


  • User

    @agoago said:

    Il 301 ha valore se da vecchio contenuto mi muovo verso lo stesso contenuto ma messo in un'url diversa.

    è esattamente il mio caso: url nuova con contenuto vecchio 🙂


  • User Attivo

    Perfetto allora il redirect via meta con tempo 0, la cosa giusta nel modo giusto.


  • User

    e il problema java e GG che si accennava prima ?

    certo, in questo modo scrivo sempre il meta giusto

    ma gg me lo legge ? e cose per i blog tipo technocrati ?


  • Super User

    Capisco la necessità di inserire su ogni pagina l'URL a cui redirigere, ma farlo fare al client non è un gran bella idea IMHO. Anche perché un <META> refresh generato dinamicamente via JS/DHTML nell'ipotesi migliore sarebbe ignorato dai motori; nella peggiore, potrebbe essere interpretato come sneaky redirect.

    Posto che un redirect lato server non è tra le opzioni disponibili, l'unica soluzione a mio avviso è usare un <META> refresh in HTML statico, diverso su ogni pagina.

    Se vuoi evitare il lavoro tedioso di inserirlo a mano su ogni pagina, prova a vedere se c'è modo di farlo fare in automatico a Blogger, aggiornando il template.

    Pensavo a una cosa così:

    [html]<ItemPage>
    <META HTTP-EQUIV=Refresh CONTENT="0; URL=http://www.nomeblog.it/<$BlogItemArchiveFileName$>">
    </ItemPage>[/html]
    ...che, dopo aver rigenerato il blog, sulle pagine dei post dovrebbe diventare:

    [html]<META HTTP-EQUIV=Refresh CONTENT="0; URL=http://www.nomeblog.it/nome-della-pagina.html">[/html]
    Vedi mo' se funzia. 😉


  • User

    GENIALE!!! .. non c'è che dire... onestamente non ci avevo pensato

    Ma non risolve un problema:

    io sto usando blogger per pubblicare lo stesso blog via FTP sul nuovo dominio www.nome.it

    quindi ho purtroppo bisgno di js per quella if che esegue il tutto solo se il blog richiamato è quello al vecchio url

    Nel modo (riepeto, geniale) che suggerisci tu, quel metatag farebbe danni anche sul sito www.nome.it


  • User Attivo

    @Adso da Melk said:

    e il problema java e GG che si accennava prima ?

    certo, in questo modo scrivo sempre il meta giusto

    ma gg me lo legge ? e cose per i blog tipo technocrati ?

    Secondo me segue solo l'url, ma non capisce di cosa si tratta. Per cui non ha l'effetto desiderato.