Come fare il redirect 301 di un articolo blog 
Author: Massimiliano Z.
Visited 249,
Followers 3,
Shared 0
Ciao,
Ho dovuto spostare il blog in un'altra cartella e sto provando a fare il redirect 301 dal vecchio indirizzo al nuovo. Con .Htaccess non ci riesco e tantomeno e, a quanto pare, non è possibile accedere alla Head delle singole pagine degli articoli.
Come posso risolvere?
Grazie in anticipo per l'aiuto.
Massimiliano
Posted on the
... non mi è chiaro il discorso della cartella diversa...
... supponendo che la seconda cartella "blog2" sia sotto la stessa radice, e che come accade l'indirizzo per il redirect potrebbe essere:
da > > blog/?nomearticolo ... a > > blog2/?nomearticolo
... oppure:
da > > blog/index.php?nomearticolo ... a > > blog2/index.php?nomearticolo
... in teoria raccogliendo le due combinazioni, il codice per il file ".htaccess", ovviamente su server Apache, e da posizionare nella ROOT (radice) del sito, potrebbe essere questo:
..........................................
RewriteEngine On
# Redirect da /blog/index.php?...
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /blog/index\.php\?([^\ ]*)\ HTTP/
RewriteRule ^blog/index\.php$ /blog2/index.php?%1 [R=301,L]
# Redirect da /blog/?...
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^blog/?$ /blog2/?%1 [R=301,L]
...................................................
.
ciao
.
Author
Ciao, grazie per la risposta.
Ti spiego meglio la situazione:
Dovevvo aggiornare il mio sito. Questo nuovo sito aveva un blog che doveva essere spostato per fare spazio ad un nuovo blog, senza però perdere il vecchio blog.
Ho quindi fatto una copia del progetto, tenendo solo il blog ed ho salvato tutto in una sottodirectory /articoli (e quindi il vecchio blog si trova in /articoli/blog).
Facendo così però i vecchi articoli cambiano indirizzo e quindi perderei indicizzzione.
Nella directory principale ho caricato il nuovo sito con il nuovo blog che quindi viene salvato in /blog (al posto del veccho blog).
Ora voglio che gli indirizzi originali dei vecchi articoli che erano salvati in /blog vengano reindirizzati dove si trovano ora, ovvero in /articoli/blog
Ho fatto delle prove ma tutti i redirect che ho provato tramite htaccess danno sempre lo stesso risultato: puntano alla pagine Blog e non al singolo articolo indicato nel codice.
Spero di aver descritto bene la situazione.
Grazie per l'assistenza
Author
Giro i due link a confronto:
(a parte il fatto che non capisco perchè alcuni link hanno "/index.php" (che prima di caricare il nuovo sito non avevano)
VECCHIA POSIZIONE ARTICOLO
https://www.massimilianozeuli.com/blog/index.php?esame-uas-open-a2-in-italia--come-registrarsi-su-enac
DA REINDIRIZZARE A NUOVA POSIZIONE
https://www.massimilianozeuli.com/articoli/blog/?esame-uas-open-a2-in-italia--come-registrarsi-su-enac
... in questo caso, per cartella "articoli", l'unica cosa che posso aggiungere è questo codice che prevede la sotto-directory /articoli/:
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/blog(/index\.php)?$ [NC]
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^blog(/index\.php)?$ /articoli/blog/?%1 [R=301,L]
.
ciao
.
Author
Grazie per la risposta,
alla fine ho risolto modificando il codice percé i punti interrogativi annullavano il comando.
A presto
... mi fa piacere che hai trovato la quadra ed hai risolto per i tuoi scopi ... ciao
.