- Home
- Categorie
- La Community Connect.gt
- Tutto sulla Community
- mod rewrite -> escludere caratteri
-
mod rewrite -> escludere caratteri
Ciao a tutti!
Volevo chiedere un parere a voi che ci capite (io ho iniziato a vedere le regex da pochissimo )Avrei un indirizzo di questo tipo
/locali/roma/3-i_butteri.html
al quale applico la regola
RewriteRule ^locali/(.)/([0-9]+)-(.*).html$ locale.php?paese=$1&locale=$2&rew=$3 *che funziona bene. Ora sto inserendo un sistema di commenti e quindi devo mettere più pagine (limito il numero di commenti per pagina).
Da ciò l'indirizzo diventa
/locali/roma/3-i_butteri-2.html
/locali/roma/3-i_butteri-3.html
...
e ho modificato la regola cosi
RewriteRule ^locali/(.)/([0-9]+)-(.)-([0-9]{4}).html$ locale.php?paese=$1&locale=$2&rew=$3&page=$4 *
In pratica ho aggiunto -([0-9]{4}) per dirgli di prendere un valore da 0 a 9999 e l'ho messo come variabile per $page. Il problema è che la precedente (.) mi prende tutto! Quindi ho su $rew i_butteri-3, che non va bene!
Come posso modificare la regola per dirgli tutto prima di -? Sono sicuro di questo perchè $rew ha solo _ come divisori delle parole!
Ho provato sostituendo (.*) con ([^-]), ma niente, e non ho idea di come muovermi!Mi sapete dare una mano?
Grazie mille!
-
Ciao,
quel {4} non mi convince per niente.
Sei sicuro che la regola sia corretta?
-
Se il problema è (.*) che prende tutto prova a sostituirlo con ([^/]+) cioè con "qualsiasi carattere che non sia uno slash"