- Home
- Categorie
- Coding e Sistemistica
- PHP
- Come nasocndere gli url riscritti con htaccess?
-
Come nasocndere gli url riscritti con htaccess?
Salve a tutti,
come da titolo vorrei sapere come fare per non far vedere l'url dopo la riscrittura, cioè io ho un url del tipo:
http://www.sito.it/directory/pagina-1.php
e faccio il redirect verso
http://www.sito.it/pagine.php?id=1
Io non vorrei che venisse visualizzato questo nuovo url ma rimanesse ilvecchio. Inoltre l'url preciso verso cui fa il redirect è http://sito.it/pagine.php?id=1 abche se io lo richiamo con www sapete perchè?
Grazie!
PS: il file htaccess è:
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteRule ^dir/(.)-(.).php$ /dir.php?id=$2
-
Ciao Cali,
Per effettuare una riscrittura dell'url non devi effettuare alcun redirect. Quindi se hai usato un metodo per farlo (location, javascript ecc) dovresti toglierli
Questo perchè è il server a capire che l'indirizzo richiesto dall'utente è fittizio, grazie al file htaccess, e riscrive l'url internamente, quindi sul server viene eseguito l'indirizzo vero, ma sul client l'indirizzo rimane quello fittizio.Quindi, dopo aver elimitato i redirect, io scriverei l'htaccess in questo modo:
RewriteEngine on Options +FollowSymlinks RewriteBase / RewriteRule ^([^/]*)/pagina-(.*).php$ $1.php?id=$2
Quindi sul server un indirizzo tipo:
*/prova/pagina-1.php *
viene riscritta in
/prova.php?id=1Spero vada bene
-
I redirect non ci sono, intendevo l'url rewrite con htaccess. La regola che mi hai fato vedere è più o menu uguale a quella che ho scritto io sopra, solo che poi lui mi fa vedere l'url riscritto!
-
Cioè fammi capire.. se te vai ad un indirizzo tipo
*/prova/pagina-1.php
senza che te fai niente (non clicchi nessun link ecc..) ti ritrovi un url tipo
/prova.php?id=1
sul browser?
:():
*
-
Sembra strano ma mi faceva così. Ora non ci fa più!
-