Redirect su URL inesistenti con HTACCESS

Jonn

Utente Attivo
29 Dic 2012
352
3
18
Pistoia
Salve a tutti,
Nel mio sito web (vedi firma) ho il file .htaccess scritto in questo modo:
Codice:
RewriteEngine On
RewriteBase /
ErrorDocument 404 http://www.johnnyferrari.it/?pagina=404
RewriteRule ^([a-zA-Z0-9-_]+)$ /index.php?pagina=$1

Funziona tutto alla perfezione, vorrei adesso eseguire un Redirect 301 alle URL inesistenti quindi:

Vorrei che digitanto l'indirizzo in questa forma:
http://www.johnnyferrari.it/index.php?pagina=[nomepagina]

Nella barra degli indirizzi si visualizzi la url in questa forma:
http://www.johnnyferrari.it/[nomepagina]

So che è possibile con un redirect da htaccess.

Premetto che ho già provato aggiungendo semplicemente [R=301] a fine riga 4, ma non funziona.

Grazie in anticipo a tutti.
 

Fez Vrasta

Utente Attivo
11 Mag 2013
409
0
0
Per tutti puoi farlo con .htaccess

Codice:
^(.*) index.php?pagina=$1 [L]

Anche se credo che un redirect del genere darebbe parecchi redirect indesiderati. Io farei questo:

Codice:
^pag/(.*) index.php?pagina=$1 [L]

Invece per il 404 solo per le pagine che corrispondono alla regola di sopra non so se si possa fare in .htaccess
Sul mio sito ho fatto in modo che quando la pagina viene cercata nel database, nel caso essa non venga trovata dia un errore 404 con un contenuto diverso dai 404 normali. (invece di "pagina non trovata" veniva scritto "articolo non trovato" o "sezione non trovata")
 

Jonn

Utente Attivo
29 Dic 2012
352
3
18
Pistoia
Ma io senti, ho provato così:
Codice:
RewriteEngine On
RewriteBase /
ErrorDocument 404 http://www.johnnyferrari.it/?pagina=404
RewriteRule ^([a-zA-Z0-9-_]+)$ /index.php?pagina=$1
Redirect 301 ^pag/(.*) index.php?pagina=$1 [L]
E così:
Codice:
RewriteEngine On
RewriteBase /
ErrorDocument 404 http://www.johnnyferrari.it/?pagina=404
RewriteRule ^([a-zA-Z0-9-_]+)$ /index.php?pagina=$1
Redirect 301 ^(.*) index.php?pagina=$1 [L]

Ma niente, mi da errore 500, specifico che sono hostato su server condiviso su Aruba.
 

Fez Vrasta

Utente Attivo
11 Mag 2013
409
0
0
Non puoi fare redirect 301 in quel modo, devi usare rewriterule

Codice:
RewriteRule ^pag/(.*) index.php?pagina=$1 [L]
/pag/ciao > index.php?pagina=ciao
 

Jonn

Utente Attivo
29 Dic 2012
352
3
18
Pistoia
Ok per il suggerimento, ma non ho il risultato voluto:

Forse non mi sono spiegato bene riprovo:

facendo una ricerca da google:

- site:www.johnnyferrari.it

Ho scoperto che sono indicizzati ancora i links con scritto il nome della variabile ed il suo valore:

- ?pagina=nomepagina

Vorrei che se qualcuno clicca su uno dei link scritti in questo modo (da Google) , venga reindirizzato sui nuovi links scritti in questo modo:

- http://www.johnnyferrari.it/nomepagina

E che anche la URL nella barra degli indirizzi venga visualizzata in questo modo.
 

Fez Vrasta

Utente Attivo
11 Mag 2013
409
0
0
Non credo si possa fare da htaccess

Io farei in PHP un controllo sull'URL con CURL e se vede che non è un URL SEO effettua il redirect all'URL SEO prima di caricare la pagina.
 
Discussioni simili
Autore Titolo Forum Risposte Data
L redirect url PHP 0
felino [Htaccess] Redirect per url non esistente Apache 1
I [HTML] redirect url HTML e CSS 12
E [PHP] Redirect Alias su dominio principale con url primario PHP 4
A mancata attivazione URL REDIRECT, Nome dominio richiesto: tambsomma.mrw.it Supporto Mr.Webmaster 0
F redirect url php PHP 1
I redirect solo in url PHP 5
altrove redirect 301 alla stessa pagina con un url rewrite PHP 0
Eugene Redirect 301 tra pagine con url rewrite Apache 0
C URL Redirect Supporto Mr.Webmaster 1
D htaccess redirect su url seo Web Server 2
P URL redirect inattivabile! Supporto Mr.Webmaster 0
Sandokan Info su URL Redirect Supporto Mr.Webmaster 4
L problema url redirect Supporto Mr.Webmaster 0
A url redirect. Supporto Mr.Webmaster 2
R Non mi si attiva url redirect. Supporto Mr.Webmaster 0
galax URL Redirect non attivo Supporto Mr.Webmaster 1
D Servizio URL Redirect mai attivato! Supporto Mr.Webmaster 1
C REDIRECT URL e PAGE RANK SEO e Posizionamento 0
D redirect url Supporto Mr.Webmaster 6
pix95 In mio url redirect non funzia! Supporto Mr.Webmaster 1
P Il mio URL redirect non funziona! Supporto Mr.Webmaster 1
M Info Url Redirect Supporto Mr.Webmaster 5
E Link Exchange e URL Redirect Supporto Mr.Webmaster 8
M URL Redirect Supporto Mr.Webmaster 2
goldenboys4 Problema col link con URL Redirect Supporto Mr.Webmaster 4
L Url redirect Supporto Mr.Webmaster 1
T Risolto Redirect a pagina esterna Javascript 2
M Risolto Redirect tramite DNS Domini 1
Cosina htaccess redirect 301 senza estensione html Web Server 6
motleyrulez Chiamata Rest Api durante Redirect PHP 1
M [WordPress] Redirect 301 WordPress 2
felino htaccess: redirect da una subdirectory alla root Web Server 2
A [PHP] redirect htaccess PHP 5
D [Apache] Regola redirect e catena di path Apache 0
M [PHP] Modi per fare redirect 301 da http a https PHP 12
M Condividere su FB con redirect Social Media Marketing 1
M Redirect sito php su server Windows PHP 0
F Catena di redirect 301 SEO e Posizionamento 1
G [HTML] Redirect di tutte le pagine di un sito ad una determinata pagina sempre dello stesso HTML e CSS 5
F htaccess e redirect 301 Apache 0
giosuecentomani redirect form a pagina html download ebook HTML e CSS 2
trattorino [PHP] [HTML] redirect iniezione su firefox PHP 5
T [WordPress] plugin redirect 301 WordPress 3
bubino8 [PHP] Contatore Scan QR con redirect PHP 10
C Redirect passaggio a https Web Server 1
L Domini Alias, Redirect o Domini aggiuntivi con cPanel: dubbi Domini 1
D [Javascript] json_econde redirect a pagina esterna Javascript 0
A redirect da pagina php chiamata da ajax PHP 2
F [PHP] [HTML] Redirect Complicato PHP 5

Discussioni simili