Guida al mod_rewrite di Apache

Pubblico la guida, realizzata da Stefano Loberti, amministratore del forum di cached.it, per riscrivere gli url dinamici in url statici tramite il mod_rewrite, un modulo di apache che permette appunto di riscrivere gli url e renderli più search friendly, graditi ai motori dai ricerca.


Usare degli url statici
(http://www.cached.it/parole-chiave/jacuzzi.htm) anzichè dinamici (http://www.google.it/search?hl=it&q … &meta=) ci può aiutare davvero tanto a dare maggiore visibilità al nostro sito. Le query string (appunto per i siti dinamici) vanno lasciate ai grandi siti (www.google.com, www.ebay.com etc etc), mentre per i piccoli o medi siti conviene appunto applicare tecniche di riscrittura degli indirizzi ed è questo una delle specifiche più comuni del modulo di apache chiamato appunto mod_rewrite.

Prerequisiti:

Come requisiti fondamentale per usare il mod_rewrite è appunto avere un web server Apache e poter avere accesso al suo file di configurazione (httpd.conf). Una veloce guida per configurare le opzioni del rewrite:

Codice::

./configure
--enable-module=rewrite
--enable-shared=rewrite

Solitamente questa opzione va abilitata al momento della compilazione del web server altrimenti dovremo modificare il file httpd.conf in seguito. Vi riporto una soluzione per una particolare soluzione di configurazione:

Codice::

<Directory /www/htdocs/yoursite>
Options ExecCGI FollowSymLinks Includes MultiViews
</Directory>

Se hai dei problemi ad abilitarti il mod_rewrite puoi  provare ad usare AllowOverride All.

Planning

E’ davvero importante avere una idea e seguire una valida strategia su come vanno riscritti gli URL in quanto questi vanno riscritti solo prima della pubblicazione del sito e non si “dovrebbero” più cambiare. Questo perchè ? Perchè se noi abbiamo una query string (ad esempio notizie.php?id=14&cat=cronaca&city=roma) se noi la trasformiamo in statica (notizie/14/cronaca/roma/) abbiamo si creato un url statico ma abbiamo anche duplicato la pagina dinamica che continuerà ad esistere (in quanto fisicamente presente sul server) con quella appena riscritta. Dunque se il vostro sito è già indicizzato non andare ad applicare il rewrite ai vostri url (a meno che non siate davvero forti con ottimi inbound links).

Esempi di rewrite

Vediamo alcuni esempi di rewrite degli url:

Codice::

Query String URL: http://tuosito.com/tutorials.php?req=tutorial&id=3&page=0
mod_rewrite URL: http://tuosito.com/tutorials/3/0.php

Ti sembra una cosa complicata far diventare un url di questo tipo ? No assolutissimamente.

Non dovrai far altro che creare un file chiamato .htaccess e caricarlo nella directory in cui si trova il file che andrai a riscrivere (in questo caso tutorials.php) e scrivere questa semplice regola:

Codice::

RewriteEngine On
RewriteRule ^tutorials/(.*)/(.*).php /tutorials.php?req=tutorial&tut_id=$1&page=$2

In questo esempio ci sono 2 righe di codice:
La prima RewriteEngine On che definisce l’inizio del rewrite engine, la seconda è la regola che andremo ad applicare al modulo di riscrittura.

Codice::

RewriteRule ^tutorials/(.*)/(.*).php /tutorials.php?req=tutorial&tut_id=$1&page=$2

Questa è la prima regexp (espressione regolare) che abiliteremo per creare i nostri url google-friendly. Questa permette che tutto quello che noi scriveremo al posto di (.*) venga comparato con la seconda parte della nostra rule di rewriting. Il file .htaccess lavora appunto usando delle espressioni regolari. Infatti il primo (.*) sarà il valore $1 ed il secondo (.*) sarà il valore $2 della nostra conversione. Possiamo usare una serie infinita di concatenazioni di variabili in tutte le nostre applicazioni web.

Io incoraggio tanto l’utilizzo di questa funzionalità in quanto aiuta davvero molto nel posizionamento sui motori di ricerca e ci permette di salire nelle serp.

Vediamo ora nel dettaglio questa semplice regola :

Codice::

RewriteEngine on
RewriteRule ^notizia/([^/\.]+)/?$ index.php?notizia=$1 [L]

^notizia/

Questa sarà la nostra ex pagina dinamica strasformata in una sorta di directory (almeno è quello che vedranno utenti e motori di ricerca). Se non c’è questa condizione il rewrite sarà ignorato.

([^/.]+)

Questo serve a far capire al rewrite che il contenuto delle parentesi quadre [ ] sarà il valore della variabile che passiamo in “andata” tramite il nostro nuovo url

/?$

questo serve ad assicurarsi che l’unica cosa che trova dopo il valore passato sia appunto un forward slash (/)

index.php?page=$1

E’ l’attuale pagina con la query string (pagina dinamica)

[L]

Dice a Apache di non procedere ad un altro RewriteRules se questo riuscisse.

Fino ad ora tutto quello che ho detto e scritto potrebbe sembrarvi complesso ma in realtà tutto questo è semplicissimo.

Facciamo un esempio pratico:

Creiamo un file .htaccess con dentro la seguente regola

Codice::

RewriteEngine On
RewriteRule ^notizie/([^/]+).html notizie.php?id=$1 [L]

Ora creiamo un file che andremo a chiamare notizie.php con dentro il seguente codice:

Codice::

<html>
         <p>
         La pagina richiesta è
         <?php echo $_GET['id']; ?>

Ora carichiamo questi 2 file in una directory di prova (che io chiamerò test) del nostro web server e proviamo a richiamare il file notizie in questi 2 modi :

www.nostrosito.it/test/notizie.php?id=14

e poi

www.nostrosito.it/test/notizie/14.html

Se il risultato è 14 complimenti avete appena riscritto il vostro primo url !!!

Ora vi vado a scrivere un po’ di regole con gli esempi prima e dopo la riscrittura poi non dovrete fare altro che applicarli come avete appena fatto:

Codice::

www.sito.it/catalogo.php?cat=occhiali&prodotto_id=1234

www.sito.it/catalogo/occhiali-1234.html

#start .htaccess code
RewriteEngine On
RewriteBase /

RewriteCond %{QUERY_STRING} ^cat\=([^&]+)\&prodotto_id\=([^&]+)$
RewriteRule ^$ /catalogo/%1-%2.html [R=301,L]

Codice::

http://sito.it/it/blog 

http://sottodominio.sito.it/it/blog

# questo .htaccess va messo nella  root di www.sito.it
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://sottodominio.sito.it/$1 [R]

-------------------------------------------------

Guida Realizzata da Stefano Loberti

Pubblicata su questo sito per cortese concessione 

di chached.it e del suo autore. Visita Il Forum ufficiale di cached.it

Commenta questo articolo nel forum. icon smile Guida al mod rewrite di Apache

rating on Guida al mod rewrite di Apacherating on Guida al mod rewrite di Apacherating on Guida al mod rewrite di Apacherating on Guida al mod rewrite di Apacherating half Guida al mod rewrite di Apache (6 votes, average: 4,50 out of 5)
loading Guida al mod rewrite di Apache Loading ...

Potrebbero interessarti anche :

41 commenti »

  1. ciao,
    interessante la guida!

    mi chiedevo una cosa:
    ho un sito web le cui pagine interne sono gestite da una index che tramite get prende l’ID della pagina e preleva così il contenuto.
    Es. …/Sezione/?pagina=41 ->viene visualizzato il contenuto della pagina con id=41

    Mi interessava sapere se potevo fare un rewrite affinchè prendessi alcune parole chiave dal db e costruire poi l’url riscritto, anzicchè la solita regola: …/sezione/41.html.

    Si può fare?

    comment-bottom
  2. admin Dice:

    Ciao SeoCosenza,

    è possibile farlo, e sicuramente è molto gradito ai motori di ricerca mettere le parole chiavi direttamente nell’url.
    se per esempio hai un campo nel database dove metti il titotlo di un articolo o post, potresti farlo apparire nell’url cosi:
    RewriteRule ^([^/]+)/([^/]+).html$ articolo.php?p=$1&titolo=$2

    dove p = l’ID, ti consiglio di metterlo in modo da avere una cronologia degli articoli, questo è gradito ai motori, e come seconda opzione metti il titolo.

    alla fine avresti un url cosi:
    http://www.nomesito.it/ID/titolo-articolo.html

    Naturalmente dovresti usare uno stringreplace con php o asp per togliere gli spazi del titolo e mettere al loro posto un “-”.
    un pò come avevo fatto io con il vecchio sito e come ho fatto anche adesso con la nuova versione.
    Se hai dubbi chiedi
    ciaoo

    comment-bottom
  3. Grazie mille per la celere e utile risposta! :)

    comment-bottom
  4. Tutta Dice:

    Ciao,
    ho provato, ma non ne vuole sapere…

    il mio .htaccess è questo
    ———————————————
    RewriteEngine On
    RewriteRule ^prova/([^/]+).html prova.php?category=$1 [L]
    ———————————————

    prova.php
    ———————————————
    <?php
    echo ( “Category [".$_REQUEST['category'].”]” );
    ?>
    ———————————————

    entrambi dentro la cartella http://www.miosito.com/web/test/
    ed io provo ad accedere con gli indirizzi

    http://www.miosito.com/web/test/prova.php?category=action
    http://www.miosito.com/web/test/prova/action.html

    Il primo funziona e il secondo mi da un 404.

    Dove sbaglio??
    Grazie mille!!

    comment-bottom
  5. Tutta Dice:

    Come non detto… ora funziona… era un problema di Apache:
    nell’ httpd.conf avevo la DocumentRoot con AllowOverride None e quindi non considerava quello scritto in .htaccess.

    comment-bottom
  6. admin Dice:

    Ciao,
    scusa se non ho risposto ma sono dal lavoro.
    :)
    Vedo che hai risolto, bene, in effetti il tuo htaccess era normale e corretto, meglio cosi.
    Ciaoo

    comment-bottom
  7. max Dice:

    ciao, io ho un problema che non capisco, ho seguito alla lettera il tutorial (a proposito, complimentissimi) e arrivo quasi in fondo al primo test ma….
    -la pagina php funziona regolarmente e scrive “La pagina richiesta è 14″
    -la pagina html non si può dire che non funzioni perchè in effetti un risultato lo fornisce, ovvero scrive “La pagina richiesta è”. Sembrerebbe non riuscire a leggere la parte da utilizzare come variabile… dove può stare il problema?
    Grazie anticipatamente
    Max

    comment-bottom
  8. max Dice:

    ah,a proposito, il contenuto dei file è assolutamente quello del tutorial, ho usato copia/incolla, ma nel dubbio ve lo trascrivo lo stesso:
    –file .htaccess–
    RewriteEngine On
    RewriteRule ^notizie/([^/]+).html notizie.php?id=$1 [L]

    –file notizie.php–

    La pagina richiesta è

    comment-bottom
  9. admin Dice:

    Ciao Max, se hai fatto copia e incolla occhio alle virgolette nella parte:

    < ?php echo $_GET['id']; ?>

    Potrebbe darti errore per questo, se il resto è ok, quando richiami la pagina :
    http://www.nostrosito.it/test/notizie/14.html
    ti richiama la giusta pagina? se e si prova ascrivere di nuovo il codice php senza copiarlo, potrebbe essere un problema del copia e incolla,spesso le virgolette le riporta male, gia e successo altre volte.

    Se non ti da la pagina allora potrebbe essere il tuo htaccess o probabilmente non hai il mod_rewrite abilitato nel tuo httpdconf di apache.
    Prova e fammi sapere.
    :)

    comment-bottom
  10. max Dice:

    risolto, il problema era che quando avevo settato il file httpd per AllowOverride non mi ero accorto che ci sono svariati AllowOverride e avevo dato “all” a quello sbagliato.
    Ho sistemato quello giusto e tutto va perfettamente! Grazie mille.
    Per conoscenza riporto di seguito le righe dove si trova il “AllowOverride” giusto… sperando di risultare utile
    ———————————

    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be “All”, “None”, or any combination of the keywords:
    # Options FileInfo AuthConfig Limit
    #
    AllowOverride All

    #
    # Controls who can get stuff from this server.
    # . /

    comment-bottom
  11. admin Dice:

    Grazie a te per la condiviire la soluzione, potrebbe essere utile anche a altri.
    :)

    comment-bottom
  12. MTBVulture Dice:

    Salve,
    purtroppo sono incappato in un hosting abbastanza “pessimo” ed ho un piccolo problema:
    tutte le pagine senza “www” non vengono caricate.
    Allora ho fatto questo:
    Ho rediretto i DNS * e @ del mio sito sul mio ip statico dove sta in esecuzione xampp always on così da intercettare le richieste, e poi ho fatto una index.php che mi trasforma le richieste senza www in richieste con www tramite il codice:

    php $server = $_SERVER['SERVER_NAME']; header(‘Location: http://www.‘ . $server);

    putroppo non funziona come dovrebbe (a volte va, altre no).
    A me servirebbe un “redirect wild card” da “http://sito.ext/*” a “http://www.sito.ext/*” per qualunque valore di * in PHP (file, sottocartelle, variabili), ed ho a disposizione tutto apache per farlo, ma non so come.
    Mi potete aiutare?
    Sarebbe una grande cosa se potesse essere “indipendente” dal dominio, cioè ogni richiesta del tipo sito1.ext, sito2.ext… si trasformi automaticamente in http://www.sito1…, anche se la cosa non è fondamentale.
    Grazie.

    Dimenticavo: ovviamente il sito NON si trova sul mio pc, devo solo “reindirizzare” la richiesta.

    comment-bottom
  13. Cristiano Dice:

    ho riscritto le mie pagine con il metodo mod rewrite.

    Tutto Ok. Ma la pagina riscritta miosito.it/pagina1/ non riesce ne a settare ne a leggere i cookie. la pagina reale miosito.it/pagina.php?id=1 invece si

    Come mai ?

    grazie

    Cri

    comment-bottom
  14. admin Dice:

    Ciao Cristiano,

    non saprei dirti cosi, forse il percorso dei cookie cambia in relazione al nuovo indirizzo.

    magari prova a postare il codice.
    :)

    comment-bottom
  15. Cristiano Dice:

    Ma a spostarlo dove ?

    ma possibile che nessuno ha qst problema ?

    A Te non risulta che i cookie hanno dei problemi ?

    comment-bottom
  16. Max Dice:

    Ciao Cristiano,
    il mod_rewrite non ce’ntra nulla con i cookie, a meno che tu non abbia un tuo script che usa i cookie, li setta e li salva in una determinata posizione, a quel punto cambia il link perche il tuo indirizzo cambia pure:

    se il cookie si trova in :

    http://www.sito.it/cookie/

    cambiando la riscrittura dell’url potrebbe cambiare anche il percorso.

    PRova contattare il tuo hosting, magari il mod_rewrite del tuo hoster ha qualche limitazione.
    :)

    comment-bottom
  17. admin Dice:

    @MTBVulture,

    tu esegui un redirect con php, devi eseguirlo con htaccess, modifichi direttamente oppure potresti anche fare un virtualhost direttamente con apache modificando il config.
    ti rimando a questa guida
    http://httpd.apache.org/docs/1.3/mod/core.html#virtualhost
    e abbastanza semplice da configurare e sei sicuro che funziona sempre.
    :)

    comment-bottom
  18. Cristiano Dice:

    Si è un problema di path del cookie

    comment-bottom
  19. Alessandro Dice:

    Ciao,
    ottime indicazioni.
    Però io mi ritrovo un problemino e in rete non sono ancora riuscito a trovare una soluzione.

    il fatto è che la mia querystring è così formata per es:
    prova.php?titolo=prova in rete

    e voglio che venga reindirizzata su prova/prova-in-rete/

    Ossia che gli spazi vengano trasformati in “-”

    Come fare nell’htaccess?

    Grazie
    Alessandro

    comment-bottom
  20. admin Dice:

    Ciao Alessandro, devi farlo con php,usare string replace:
    http://es2.php.net/str_replace
    per riempire gli spazi vuoti e inserirli nel link, non so se con htaccess lo puoi fare, ma e consigliabile direttamente da php.

    dai un occhiata al link, è molto semplice da usare lo str_replace.IO nei miei siti ho sempre fatto cosi.
    :)
    Ciao

    comment-bottom
  21. Alessandro Dice:

    Ciao,
    nell’htaccess mi sa che non può.

    Solo che ho delle pagine già indicizzate con parole con lo spazio…

    Tu come hai fatto in questi casi?

    ciao
    Alessandro

    comment-bottom
  22. Frank Dice:

    Ciao a tutti, la guida è molto interessante, tuttavia dopo aver applicato queste regole ho notato che google mi restituisce un 404 sugli indirizzi riscritti. nel senso che le pagine si possono navigare tranquillamente ma negli strumenti per webmaster di google mi segnala che le suddette pagine non sono raggiungibili. Cosa potrebbe essere? questo è il mio htaccess:

    php_flag register_globals On

    ErrorDocument 404 /404.html

    Options +FollowSymLinks
    RewriteEngine on
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^dominio.com [NC]
    RewriteRule ^(.*)$ http://www.dominio.com/$1 [L,R=301]

    RewriteRule ^([0-9]+)/([a-zA-Z0-9_-]+).html$ cat.php?id=$1&name=$2 [L]
    RewriteRule ^video/([0-9]+)/([^/]+).html$ video.php?id=$1&title=$2

    comment-bottom
  23. admin Dice:

    Ciao Frank, prova a aspettare un po per vedere al prossimo passaggio del bot di google cambia qualcosa, importante che le pagine funzionino.
    :)

    comment-bottom
  24. Stefano Dice:

    ciao,

    bella la guida ed ottimi i consigli :)

    ho un problemino che non capisco, non sono molto pratico.

    Ho un sito in php ma senza database

    ecco un esempio dell’index :

    switch($link_da_includere)
    {case 0:$pagina = “blabla.htm”; break;
    case 11:$pagina = blabla2.htm”; break;
    case 14:$pagina = blabla3.htm”; break;
    case 1: $pagina = “blabla4.htm”;break;

    ho fatto un htaccess con questa regola:
    RewriteEngine On
    RewriteRule ^blabla/([^/]+).htm index.php?link=$1 [L]

    non funziona e non so perchè…

    grazie

    Stefano

    comment-bottom
  25. admin Dice:

    e ativato il modulo rewrite sul tuo server?
    il codice sembrerebbe corretto.

    comment-bottom
  26. Luigi Dice:

    Ciao Antonio,

    ho trovato il tuo articolo molto interesante perchè ho proprio un problema con il Mod Rewrite

    volevo capire se fosse possibile modificare le URL delle singole Pagine Web di un sito Creato in Php.

    Il sito in questione è un portale di annunci ed al momento la URL del singolo annuncio è:

    http://www.mrannunci.it/?regione=campania&pag=vediannuncio&idannuncio=1
    e vorrei poterla modificare in:

    http://www.mrannunci.it/annunci-campania/Mouse-Logitech-MX-Revolution-Nuovo

    è possibile effettuare un’operazione del genere ??

    Grazie in anticipo della tua disponibilità

    comment-bottom
  27. admin Dice:

    @Luigi : puoi farlo senza problemi, ma ti serve php per ricreare gli url, e passare le variabili come regione e id.

    comment-bottom
  28. Luigi Dice:

    Ciao Antonio,

    ma è un’operazione complessa ???

    Te lo chiedo poichè non sono molto pratico di linguaggio Php, al limite è una cosa che potresti fare tu (pagando naturalmente) ?

    Poichè il sito in oggetto è ultimato ma purtroppo ha questo problema delle URL che penso non sia da trascurare, infatti le varie URL così come sono non verrebbero proprio prese in considerazione da Google e sarebbe proprio un peccato.

    Se vuoi possiamo anche continuare via mail in privato!

    comment-bottom
  29. admin Dice:

    Mi spiace ma in questo periodo proprio non avrei il tempo materiale :)
    Quello che posso consigliarti, anche per non spendere soldi e chiedere in qualche forum, come ha fatto qualcuno nei commenti precedenti.
    Te ne consiglio due :
    http://www.yourinspirationweb.com/forum/
    giorgiotave.it/forum

    comment-bottom
  30. Luigi Dice:

    Ok seguirò il tuo consiglio, grazie comunque per la disponibilità :-)

    comment-bottom
  31. Luigi Dice:

    Scusa Antonio volevo capire una cosa, come suggerivi tu, cioè ricreare le URL, non ci si avvale allora del Mod Rewrite ???

    Si andrebbe a ricreare le URL da capo giusto ???

    comment-bottom
  32. admin Dice:

    Luigi : mi ero dimenticato di indicarti il sito principale dell’autore del tutorial, che non sono io ma Stefano Loberti di chached.it

    il forum lo trovi qua :
    http://forum.cached.it/forum/

    cmq se leggi e egui questo tutorial già puoi capire come fare,php ti serve poi per riscrivere tutti i link. se prima un link puntava a
    http://www.mrannunci.it/?regione=campania&pag=vediannuncio&idannuncio=1

    ora deve cambiare per il nuovo url e se le variabili regione,pag e idannuncio sono dinamiche, cioè provengono da un database, allora devi sapere usare php per poter cambiare gli url.

    Ti ripeto purtroppo ho poco tempo in questo periodo a disposizione, altrimenti ti aiuterei volentieri :)
    Se vuoi posso consigliarti, in privato, qualcuno che puoi contattare se proprio non riesci a risolvere il problema.
    antonio.fullone [at] gmail . com

    ciao!

    comment-bottom
  33. Francesc.. Dice:

    ciao a tutti…io ho un problema..o meglio non mi è chiara una cosa,

    comment-bottom
  34. Francesco Dice:

    sry :D

    Dicevo..non mi è chiara una cosa..

    Ho un sito già attivo e funzionante…avevo in mente di attivare il mod_rewrite ma mi spiegate 2 cose?
    1- posso usare il mod_rewrite anche se ormai sul sito ho riferimenti fatti in un certo modo?mi riferisco a css &c. perchè facendo un mod rewrite qui http://www.nightchannel.it/index.php?sel=music (scrivendo http://www.nightchannel.it/homepage/music) non vedo le immagini e gli stili del CSS..come mai?dovrei rifare tutti i riferimenti?
    2- se vado su http://www.nightchannel.it/index.php?sel=music , facendo il mod rewrite, non si può fare in modo che l’url diventi quello riscritto?
    2bis- a proposito un Off Topic, nel mio .htaccess ho messo un redirect alla pagina index.php nel caso in cui si verifichi un 404 o un 403 però la url rimane quella digitata male (nel caso di un 404)..non si può cambiare mettendo index.php?

    Spero di essermi stato chiaro…
    In ogni caso complimenti per il post…molto chiaro!
    Grazie

    comment-bottom
  35. admin Dice:

    Francesco :
    puoi fare tutte e 3 le cose, prova a chiedere nel forum di Stefano cached.it, è lui l’autore della guida :)

    comment-bottom
  36. andrea Dice:

    Volevo chiederti se è possibile fare una cosa del genere:
    Ho due domini, e voglio usare htaccess per mostrare la stessa cosa, ma con una variabile in più.

    Es:
    su dominio1.it mostro il sito originale
    su dominio2.com mostro le stesse cose, ma con la variabile ?lang=en alla fine di ogni link, ma non voglio che questo sia visibile, ovvero vorrei che si vedesse dominio2.com come url, ma la pagina visualizzata fosse dominio1.it?lang=en

    Non so se sono riuscito a spiegarmi…

    comment-bottom
  37. lele Dice:

    ma per caso c’è un modo per far gestire anche la cache al mod_rewrite? io cel’ho abilitato sul sito e da quel che ho capito non posso più tornare indietro altrimenti avrei ulteriori url doppi ( ne ho già un bel probabilmente creati durante la costruzione avvenuta online ), ma da quel che ho capito non posso usare il caching del browser con questo modulo… confermi? grazie :)

    comment-bottom
  38. match58 Dice:

    Scusate l’intromissione, ma se il codice qui sotto io lo inserisco in una root di un sito, quando vado a richiamare quel sito invece del suo indirizzo mi compare sottodominio.sito.it?

    Perchè è questo che mi interessa. Cioè quando digito http://www.miosito.it invece devo visualizzare nel url http://www.miosito2.it

    Con questo codice riesco a farlo?

    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ http://sottodominio.sito.it/$1 [R]

    comment-bottom
  39. Igor Dice:

    Cio ho modificato il tuo suggerimento così per adattarlo alle mie esigenze ma non funziona:

    RewriteCond %{QUERY_STRING} ^lang\=([^&]+)\&art\=([^&]+)$
    RewriteRule ^$ /articles/%1/%2.php [R=301,L]
    hai qualche suggerimento???
    Grazie!!!

    comment-bottom

Trackbacks

  1. [...] Vi rimando a una lettura all’articolo sul  mod_rewrite per capire come riscrivere gli url del… [...]

    comment-bottom
  2. [...] quello su come popolare una select dinamica,realizzata da max di mdlwork.com, pure la guida di Stefano Loberti sul mod_rewrite, prima di pubblicarli ho contattato gli autori e cheisto il permesso e poi ho specificato, nei [...]

    comment-bottom

RSS feed dei commenti a questo articolo. TrackBack URL

Lascia un commento