Newsgroup: it.lavoro.professioni.webmaster
Titolo: Mi date qualche chiarimento sull'url_rewrite?

In un CMS in PHP che sto realizzando vorrei evolvere la mia conoscenza
della tecnica dell'url_rewriting.
Attualmente la uso a livello basilare, non ho mai avuto particolari
necessit� di elaborazioni particolari.
L'utilizzo generalmente era tipo questo:
www.miosito.com/(pagina)/(sottopagina)/(articolo).html
 =
index.php?page=$1&subpage=$2&art=$3
Per cose particolari usavo nell'htaccess delle regole apposite, per es:
www.miosito.com/(categoria)/(sottocategoria)/(articolo).html
 =
index.php?cat=$1&subcat=$2&art=$3
Ma se volessi usare delle variabili (nella query string) automaticamente
come potrei fare?
E' possibile una cosa del genere:
www.miosito.com/(?)/(?)/(?)\.html
 = index.php?$var1=$1&$var2=$2&$var3=$3
Ovviamente questa regola � sbagliata, � scritta solo per semplificare,
ma si capisce quello che chiedo?
In definitiva vorrei modificare non solo il valore, ma anche la
definizione della variabile della querystring.
Grzie
Max
-- 
http://www.maxori.it
L'Arte � la capacit� di fare cose di nessun valore
e di riuscire a venderle
F. Zappa

 definizione della variabile della querystring.
Non ho  capito, dove intendi valorizzare quelle $var ?
Ti faccio notare che il dollaro in $1 $2 $3 non ha niente a che vedere 
con  il fatto che in php le variabili abbiano per convenzione un $ 
davanti al nome.

 davanti al nome.
Immaginavo di non essermi spiegato bene...
In pratica, nel file .htaccess io recupero senza problemi le variabili
che mi interessano, quindi con questa regexp recupero i valori da
inserire nella querystring:
RewriteRule ^([^/]*)/([^/]*)/$ index.php?lang=$1&page=$2 [L,QSA]
Il mio problema è poter assegnare i valori $1 e $2 a dei nomi
differenti a seconda del referer, vorrei quindi poter cambiare 
"lang=$1" in "cont="$1"
oppure:
"page=$2" in "author=$2", o "country=$2". 
Non credo sia possibile, ma prima di inventarmi un'altra soluzione
volevo chiedere.
Max
-- 
http://www.maxori.it
L'Arte è la capacità di fare cose di nessun valore



Questo approccio � quello che viene usato nelle estensioni di ezPublish. 
Imho non conviene se non hai esigenze davvero particolari: costringe ad 
avere una gestione dell'errore molto articolata
Datti un'occhiata ai tutorial di ezPublish su come creare estensioni, 
anche se intendi fare la cosa da zero potresti ricavarne spunti interessanti
Marco

Alla fine ho risolto isolando le macro aree che non cambieranno mai nel
sito e assegnando ai link interessati un'url fissa.
In questo modo risulta facile nel .htaccess riconoscerle e assegnare le
query string giusta.
Però mi rimane il dubbio se sia possibile fare quello che chiedevo,
anche se, riflettendoci, credo non lo sia.


 Marco
Grazie, non mancher� sicuramente, nel frattempo ho risolto in altro
modo. Come ho scritto nell'altro post.


 "cont="$1"
si puoi farlo tramite la direttiva rewritecond, 
http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritecond
ma ricordati che il referer è una grandezza che viene settata dal 
browser, quindi pilotabile dall'utente. In alcuni casi il referer non 
viene nenache settato, quindi potresti avere dei malfunzionamenti.