RewriteRule et caractères spéciaux

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics

dmoztout
Nouveau WRInaute
 
Messages: 4
Inscription: Ven Jan 06, 2006 9:07

RewriteRule et caractères spéciaux

Message le Mar Mar 11, 2008 14:31

Bonjour,

Je mets en place l'url rewriting sur mon site, je ne rencontre pas de problèmes particuliers, sauf pour les caractères spéciaux contenus dans mes variables, du genre : ? # /, etc.

Je m'explique, j'avais des pages du style
Code :

1. www.monsite.fr?type_recherche=origin&textfield=NOM


que je réécris
Code :

1. www.monsite.fr/origine/NOM.html



ma règle est donc :
Code :

1. RewriteRule /origine/(.*)\.html$ www.monsite.fr?type_recherche=origin&textfield=NOM [L]



Une erreur 404 apparaît si NOM contient un caractère spécial.
Les variables NOM sont stockées en BD et sont des chaînes avec toute sorte de caractères. Je ne peux pas modifier toutes les chaînes déjà dans la BD.
Comment dois-je réécrire ma règle pour réussir à faire accepter les dièses et point d'interrogation?
Quelqu'un a une idée? j'ai essayer d'échapper les caratères sur la règle RewriteRule, mais ça ne marche pas.
je ne connais pas grande chose sur les expressions régulières et c'est difficile d'avoir des réponses pertinentes quand je recherche :
RewriteRule "caractères spéciaux" # ?
sur les moteurs.

Merci
alain[/code]


rudddy
WRInaute accro
WRInaute accro
 
Messages: 1699
Inscription: Mer Aoû 01, 2007 19:00

Message le Mar Mar 11, 2008 14:57

je sais pas exactement mais déjà ta règle à un problème, il faudrait cela je pense


RewriteRule /(.*)/(.*)\.html$ www.monsite.fr?type_recherche=$1&textfield=$2 [L]

dmoztout
Nouveau WRInaute
 
Messages: 4
Inscription: Ven Jan 06, 2006 9:07

Message le Mar Mar 11, 2008 15:33

en fait ma question est justement par quoi remplacer le

/(.*)/ du RewriteRule

pour prendre en compte les ? et # et autres...

du genre

RewriteRule /([a-zA-Z0-9\?\")+/...


Leonick
WRInaute accro
WRInaute accro
 
Messages: 12326
Inscription: Dim Aoû 08, 2004 20:24

Message le Mar Mar 11, 2008 19:31

normalement avec [QA] en fin de ligne de règle

dmoztout
Nouveau WRInaute
 
Messages: 4
Inscription: Ven Jan 06, 2006 9:07

Message le Mer Mar 12, 2008 10:34

Apache n'a pas l'air de comprendre [QA], ça génére des erreurs 500 à toutes les pages...
Quelle en est la définition de [QA]?


Leonick
WRInaute accro
WRInaute accro
 
Messages: 12326
Inscription: Dim Aoû 08, 2004 20:24

Message le Mer Mar 12, 2008 11:19

dmoztout a écrit:Apache n'a pas l'air de comprendre [QA], ça génére des erreurs 500 à toutes les pages...
Quelle en est la définition de [QA]?
me suis trompé :oops: , c'était [QSA] Query String Append


Suede
WRInaute accro
WRInaute accro
 
Messages: 3721
Inscription: Ven Oct 04, 2002 11:22

Message le Mer Mar 12, 2008 12:58

Il ne faudrait pas encoder les caractères speciaux que tu as dans ton url?


Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités