Come Gestire Multiparametri in Rewrite Rule

mod_rewrite_logo

L’argomento del Rewrite Rule è parlato ampliamente in diversi blog e siti che si occupano di ottimizzazione seo e url Friendly, ma leggendo tra questi mi sono accorto che molti ne parlano in maniera generica e senza considerazioni efficaci, sopratutto quando si parla di manipolare url che contengano diversi parametri.


Ottimizzare un URL rendendola più user friendly o meglio SEO friendly ci aiuta a lanciare delle keyword che vogliamo posizionare tra siti che ci stanno facendo una concorrenza spietata sullo stesso argomento. Prendiamo in esempio questo post, sarebbe ovvio lanciare la parola gestire multiparametri in rewrite rules per questo andiamo a costruire un url che contenga queste parole. In worpress la cosa non ci tocca, il tutto è gestito dai permanentlink, che ci alleggeriscono il lavoro che dovremmo fare nel file .htaccess, o direttamente nel file di configurazione di apache. A me sinceramente la politica di wordpress non mi soddisfa tanto, in quanto mi vincola nel gestire efficacemente le url e dividere in maniera dinamica i post in argomenti, in ogni caso prendiamo in considerazione un sito che ci permetta in maniera agile e senza fronzoli di manipolare le url, ovvero non goda di buoni strumenti di ottimizzazione, e che quindi avremmo tutta la libertà per il manipolamento di tali indirizzi via file e rules .htacces.Premesso in maniera prolissa tutto ciò iniziamo a considerare la regola da usare per manipolare ad esempio il titolo di questo post, come stavo dicendo precedentemente.


Passaggio di Parametri Fantasma

Diciamo che il post in questione Gestire Multiparametri in Rewrite Rule venga gestito dallo script post.php, con una url senza mod rewrite del tipo:



http://miosito.internet/post.php?id=1&title=gestire_multiparametri_in_rewrite_rule



la regola da usare dentro il file .htaccess per trasformare tale url sarà



RewriteEngine On
RewriteRule ^mod_rewrite_rules/([0-9]+)/([a-zA-Z0-9_-]+)\.html$ post.php?id=$1  [L]



Tale regola vi può sembrare strana, ma c’è una logica dietro, io so che il post con il nome di Gestire Multiparametri in Rewrite Rule è ottenuto o meglio visualizzato da una query sull’id numero 1, quindi quello che faccio e agire solo su tale parametro, ovvero dalla parte dell’html andrò a scrivere l’url come:



http://www.miosito.internet/mod_rewrite_rules/1/gestire_multiparametri_in_rewrite_rule.html





Sarà il modulo di apache “mod_rewrite” a codificare tale url e restituirmi il post adeguato chiamando lo scipt post.php con id=1, se non siete convinti di questo giochetto potete considerare 2 indici che realmente servono a individuare il post.


Passaggio di almeno due parametri reali



http://miosito.internet/post.php?id=1&category=rewrite



in questo caso abbiamo bisogno di 2 parametri in mod_rewrite per risalire al post, per questo andremo a scrivere in rewrite rules la regola



RewriteEngine On
RewriteRule ^mod_rewrite_rules/([0-9]+)/([a-zA-Z0-9_-]+)\.html$ post.php?id=$1&category=$2  [L]



In questo modo tramite l’indirizzo




http://www.miosito.internet/1/rewrite



Sarà visualizzata la pagina con post che ci interessa. gli esmpi mi sembrano abbastanza esemplificativi, per problemi siete liberi di postare

pdf

Tags: ,

Scritto da Santarelli Luca giovedì, 12th marzo , 2009 00:14 Letture:

    « Come Progettare un Layout Liquido  |  RestTest Debug di richieste XHR con firefox »

    Leave a Reply