apache - htaccess e redirezione pagine spostate

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
danix
Staff
Staff
Messaggi: 3289
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 6.12.13 x86_64
Desktop: i3
Località: Verona (VR)
Contatta:

apache - htaccess e redirezione pagine spostate

Messaggio da danix »

Ciao a tutti, recentemente ho aggiornato un sito che sto curando.
In origine il sito usava del codice php scritto da me, e la struttura dei link era la seguente: www.sito.it/main.php?p=pagina&sect=sezi ... ea&ecc=ecc, però adesso ho spostato tutto in una sottodirectory e sto usando wordpress con i permalink attivati...

La domanda è, come devo impostare l'htaccess per redirigere il traffico proveniente da google, dai vecchi link ai nuovi?? Io ho scritto qualcosa del genere, ma sembra non funzionare:

Codice: Seleziona tutto

redirect 301 http://www.sito.it/main.php http://www.sito.it/site/
che dovrebbe redirigere le richieste dalla vecchia homepage alla nuova presente nella sottodirectory site in cui è installato wordpress... però non funziona, infatti se nell'url scrivo l'indirizzo della vecchia home mi da un 404... :(


Mi dite cosa sto sbagliando?? Grazie in anticipo...
danix
danix ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
conraid
Staff
Staff
Messaggi: 13631
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: apache - htaccess e redirezione pagine spostate

Messaggio da conraid »

Codice: Seleziona tutto

redirect 301 /main.php http://www.sito.it/site/
ma ti vanno tutte in http://www.sito.it/site/, non c'è una corrispondenza tra pagine così
può provare con qualche regex, ma non saprei

Avatar utente
danix
Staff
Staff
Messaggi: 3289
Iscritto il: ven 27 ott 2006, 19:32
Nome Cognome: Danilo M.
Slackware: 64 current
Kernel: 6.12.13 x86_64
Desktop: i3
Località: Verona (VR)
Contatta:

Re: apache - htaccess e redirezione pagine spostate

Messaggio da danix »

si, la corrispondenza tra pagine c'è perchè ho ricopiato i contenuti dal vecchio codice in wordpress, solo che io con le regex (e non solo) sono una frana... mi sa che dovrò provare però...

ad esempio la pagina /main.php?p=gallerie&section=editoria in wordpress è diventata /site/gallerie/editoria/, mi dai qualche spunto da cui partire per scrivere una regex che funzioni con quest'esempio?? Non saprei nemmeno cosa cercare... :(


grazie ;)
danix
danix ha scritto:non sono molto presente sul forum, e di ciò mi scuso con tutti

Avatar utente
conraid
Staff
Staff
Messaggi: 13631
Iscritto il: gio 14 lug 2005, 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Desktop: kde
Località: Livorno
Contatta:

Re: apache - htaccess e redirezione pagine spostate

Messaggio da conraid »

il redirect non funziona così, prende solamente indirizzi
o usi redirect_match

Codice: Seleziona tutto

RedirectMatch 301 ^/main.php?p=(.*)&section=(.*)$ http://www.sito.it/site/$1/$2
oppure RewriteRule

Codice: Seleziona tutto

RewriteEngine on
RewriteRule ^/main.php?p=(.*)&section=(.*)$ http://www.sito.it/site/$1/$2 [L,R=301] 
qualcosa di simile insomma

http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html

Rispondi