Gérer %20 dans .htaccess

WRInaute discret
Bonjour,
J'ai eu le malheur de faire des pages sous la forme monsite.com/page toto.html (page 'espace' toto.html)
Et comme je suis en train de tout réécrire, je fait des redirect permanent en corrigeant ça.
Mais apparement Apache me cause du souci, vu qu'il a l'air de mal comprendre mes espaces.

Voici les 2 règles de réécriture que j'ai testées :
Redirect permanent /page%20toto.html -http://www.monsite.com/page-toto.html
et
RewriteRule ^page%20toto.html$ /page-toto.html [R=301,QSA,L]
Mais ca ne fonctionne pas !

Quand à la regle
Redirect permanent /page toto.html -http://www.monsite.com/page-toto.html
Ca me fait planter le serveur

Quelqu'un est déjà tombé sur ce problème, svp ?
 
WRInaute passionné
Bonjour,

as tu essayé ceci ?
Code:
RedirectMatch 301 /page([:space:])toto.html http://www.example.com/page-toto.html

Edit : Serious a fourni une solution plus simple... ;)
 
WRInaute passionné
Chez moi ceci fonctionne:
Code:
RewriteRule ^/page\ toto\.html$ http://www.example.com/page-toto.html [R,L]
Je viens de tester car j'avais un doute... (apache 1.3)
 
WRInaute discret
Bonjour,

Je me permets de "m'incruster" ici car j'ai le même problème.

J'ai par exemple une page qui s'appelle www.xxxxxxx/N-1 commander.htm
(et oui à l'époque, je n'y connaissais pas grand chose, alors j'avais fait comme ça :oops: )

J'ai réussi à faire des redirections "normales" pour des urls classiques du genre:
Redirect permanent /cgv.htm http://www.xxxx.com/index.htm

J'ai essayé la méthode de serious sans succès, voilà ce que j'ai mis:
RewriteRule ^/N-1\ commander\.htm$ http://www.xxxx.com/N-1-commander.htm [R,L]

Au final quand j'appelle la page http://www.xxxx.com/N-1 commander.htm j'arrive toujours sur http://www.xxxx.com/N-1%commander.htm

J'ai louppé qq chose sans doute, mais quoi ?

Merci d'avance pour votre aide
 
WRInaute discret
Hello Jean Luc,

Merci pour ta réponse.

Bon visiblement cela ne change rien ? Faut-il que je rajoute du code sur mon htaccess ?

Pour l'instant j'ai plusieurs lignes du type:
Redirect permanent .......

Merci pour ton aide
 
WRInaute discret
Je pense que tu devrait essayer ça :
Code:
RewriteRule ^N-1\ commander\.htm http://www.xxxx.com/N-1-commander.htm [R=301,QSA,L]
 
WRInaute discret
salut mescal,

rien a faire....

J'avais nommé ma page comme ça: www.xxxx./N-1 commander.htm

voici l'url qui s'affiche sur mon site : www.xxxx/N-1%20commander.htm

Bizarre que ça marche chez toi et pas chez moi... c'était le seul code que tu avais mis dans ton htaccess ? Y a pas aussi une histoire de rewrite engine on ou qq chose du genre ?
 
WRInaute discret
Ben normalement, avant de déclarer les rewriterules, en première ligne, faut mettre :
Code:
RewriteEngine on

Après y'a des choses qui changent selon les serveurs.
Par ex sur le mien je ne doit pas mettre
RewriteRule ^/N-1
mais plutot
RewriteRule ^N-1
 
WRInaute discret
:wink: :wink: :wink:

Ca marche !

merci beaucoup !

je vais m'attaquer aux 50 autres URLs maintenant...

Bonne soirée
 
Nouveau WRInaute
Bonjour, j'ai un prolème du même type...
Je rewrite certaines pages en fonction du titre du contenu, mais j'ai parfois des caractères speciaux dedans, donc je me retrouve avec un ou plusieurs caractères '%' dans l'url... quand je clique sur ces liens, je tombe sur une 404... en effet, ça ne passe pas dans la règle de rewriting...

à la base c'était ça :
Code:
RewriteRule ^([a-zA-Z0-9&.-]+).html$ content.php?rw_title=$1 [L]

si j'ajoute le % de la manière suivante, ça ne change rien : 404
Code:
RewriteRule ^([a-zA-Z0-9&.-\%]+).html$ content.php?rw_title=$1 [L]

ça n'est pas censé marcher ?

Merci d'avance pour votre aide.
 
WRInaute passionné
Il ne me semble pas que cela soit possible.

Essaye peut être de rajouter une clause plus globale, pour tester :

Code:
RewriteRule ^/(.*)\.html$ content.php?rw_title=$1 [L]
 
Nouveau WRInaute
RewriteRule ^([a-zA-Z0-9&.-]+).html$ content.php?rw_title=$1 [L]

> RewriteRule ^([a-zA-Z0-9&\.-]+).html$ content.php?rw_title=$1 [L]

Peut etre meme un \ devant le . et pour le & \& peut etre ca marche aussi ?
 
Discussions similaires
Haut