[résolu] comment remplacer url avec accents dans htaccess
26 messages
• Page 1 sur 2 • 1, 2
-

JanoLapin - WRInaute accro

- Messages: 4052
- Inscription: 21 Sep 2008
[résolu] comment remplacer url avec accents dans htaccess
Bonsoir à tous,
un email parti trop vite comprend un accent dans le code d'ne url, ce qui mène évidemment à une 404.
J'ai essayé de mettre en place une redirection via .htaccess sans y arriver
Quel est le bon code à utiliser, SVP ?
Merçi de votre aide
un email parti trop vite comprend un accent dans le code d'ne url, ce qui mène évidemment à une 404.
J'ai essayé de mettre en place une redirection via .htaccess sans y arriver
- Code: Tout sélectionner
Redirectpermanent /itinéraire/ http://example.org/itineraire/
Quel est le bon code à utiliser, SVP ?
Merçi de votre aide
-

JanoLapin - WRInaute accro

- Messages: 4052
- Inscription: 21 Sep 2008
Re: comment remplacer url avec accents dans htaccess
j'ai essayé aussi avec la syntaxe suivante, là encore sans résultat
j'avoue y perdre mon lorem ipsum. Si une âme charitable voulait bien m'indiquer la syntaxe à utiliser pour rediriger /itinéraire/ vers /itineraire/
Merçi de votre aide
Janolapin
- Code: Tout sélectionner
Redirectpermanent /itin%C3%A9raire/ http://example.org/itineraire/
j'avoue y perdre mon lorem ipsum. Si une âme charitable voulait bien m'indiquer la syntaxe à utiliser pour rediriger /itinéraire/ vers /itineraire/
Merçi de votre aide
Janolapin
-

Marie-Aude - Modérateur

- Messages: 11878
- Inscription: 5 Juin 2006
Re: comment remplacer url avec accents dans htaccess
Et la solution de bourrin de créer un fichier itinéraire avec une redirection php dans l'en tête ?
-

JanoLapin - WRInaute accro

- Messages: 4052
- Inscription: 21 Sep 2008
Re: comment remplacer url avec accents dans htaccess
@YoyoS: oui, j'ai regardé et j'ai trouvé tout un tas de trucs, dont aucun n'a marché chez moi (remplacer la lettre par un caractère universel, essayer des règles de Rewriterule ou des Rewritematch
C'est aggravé par le fait que je ne comprends pas la syntaxe des regex... alors forcémement ça n'aide pas
@Marie-Aude: oui, j'ai essayé, mais je n'arrive pas à faire la redirection vers ce fichier itinéraire.php
Il est tard je vais me coucher...; j'espère trouver la solution demain
C'est aggravé par le fait que je ne comprends pas la syntaxe des regex... alors forcémement ça n'aide pas
@Marie-Aude: oui, j'ai essayé, mais je n'arrive pas à faire la redirection vers ce fichier itinéraire.php
Il est tard je vais me coucher...; j'espère trouver la solution demain
- Dolph
- WRInaute impliqué

- Messages: 631
- Inscription: 1 Mar 2011
Re: comment remplacer url avec accents dans htaccess
JanoLapin a écrit:@Marie-Aude: oui, j'ai essayé, mais je n'arrive pas à faire la redirection vers ce fichier itinéraire.php
La redirection, tu la fais après...
Si ton url est ndd/itinéraire/ (sans extension)
Tu créé un dossier itinéraire dans le quel tu met un index.php
Dans l'index.php tu met un 310 vers le bon fichier.
-

Blount - WRInaute occasionnel

- Messages: 430
- Inscription: 18 Nov 2010
Re: comment remplacer url avec accents dans htaccess
En théorie, ce devrait être possible de catcher les caractères accentués. Comme je n'ai pas le temps de faire un test, voici une solution temporaire :
On dit simplement que si le caractère n'est pas un « e », on redirige. Ça prend évidemment n'importe quel caractère, mais ce n'est pas important dans ton cas.
Le « ? » permet de mettre dans l'adresse soit « itinéraire » ou « itinéraire/ ».
- Code: Tout sélectionner
RewriteRule ^itin[^e]raire/? http://example.org/itineraire/ [L,R=301]
On dit simplement que si le caractère n'est pas un « e », on redirige. Ça prend évidemment n'importe quel caractère, mais ce n'est pas important dans ton cas.
Le « ? » permet de mettre dans l'adresse soit « itinéraire » ou « itinéraire/ ».
-

JanoLapin - WRInaute accro

- Messages: 4052
- Inscription: 21 Sep 2008
Re: comment remplacer url avec accents dans htaccess
Merçi à tous (tes) de vos réponses.
Chez moi, la solution de redirection propsoée par Blount ne marche pas, sans que j'arrive à trouver pourquoi. En revanche, la méthode "brutale" de redirection par répertoire a bien marché.
Néanmoins, il y a plusieurs choses qui m'intriguent:
* quelle différence entre redirectMatch 301 et Redirectpermanent (on voit les deux sur des tutos en ligne) ?
* l'url example.org/itinéraire/ apparaîtra certes comme telle la barre d'adresse de navigateurs modernes (testé IE9, FF4, Opera11) mais elle sera traduite par example.org/itin%C3%A9raire/
Or la méthode adoptée, (cf. plus haut Marie-Aude + Dolph) consiste à créer un répertoire /itinéraire avec un index.php de redir. Donc de ne aps tenir compte de la traduction de l'url apr les navigateurs... et pourtant ça marche
J'y perds mon latin, avec cette histoire. C'ets marrant de voir qu'un petit truc , qu'on pensait maitriser convenablement, ouvre finalement une faille beaucoup plus grande... sniiif !
Chez moi, la solution de redirection propsoée par Blount ne marche pas, sans que j'arrive à trouver pourquoi. En revanche, la méthode "brutale" de redirection par répertoire a bien marché.
Néanmoins, il y a plusieurs choses qui m'intriguent:
* quelle différence entre redirectMatch 301 et Redirectpermanent (on voit les deux sur des tutos en ligne) ?
* l'url example.org/itinéraire/ apparaîtra certes comme telle la barre d'adresse de navigateurs modernes (testé IE9, FF4, Opera11) mais elle sera traduite par example.org/itin%C3%A9raire/
Or la méthode adoptée, (cf. plus haut Marie-Aude + Dolph) consiste à créer un répertoire /itinéraire avec un index.php de redir. Donc de ne aps tenir compte de la traduction de l'url apr les navigateurs... et pourtant ça marche
J'y perds mon latin, avec cette histoire. C'ets marrant de voir qu'un petit truc , qu'on pensait maitriser convenablement, ouvre finalement une faille beaucoup plus grande... sniiif !
-

JanoLapin - WRInaute accro

- Messages: 4052
- Inscription: 21 Sep 2008
Re: comment remplacer url avec accents dans htaccess
bien sur:
- Code: Tout sélectionner
AddType x-mapp-php5 .php
Options All -Indexes
<files .htaccess>
order allow,deny
deny from all
</files>
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
<files wp-config.php>
order allow,deny
deny from all
</files>
# END WordPress
-

Blount - WRInaute occasionnel

- Messages: 430
- Inscription: 18 Nov 2010
Re: comment remplacer url avec accents dans htaccess
Tu as donc bien mis :
Je viens de tester la règle, et elle fonctionne.
Sinon, le mot, c'est bien « itinéraire », ou c'est autre chose ? Tu es sur que c'est bien l'adresse avec le « é » qui est mis ?
Il faudra vérifier que WP n'écrase pas ta valeur.
- Code: Tout sélectionner
AddType x-mapp-php5 .php
Options All -Indexes
<files .htaccess>
order allow,deny
deny from all
</files>
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^itin[^e]raire/? http://example.org/itineraire/ [L,R=301]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
<files wp-config.php>
order allow,deny
deny from all
</files>
# END WordPress
Je viens de tester la règle, et elle fonctionne.
Sinon, le mot, c'est bien « itinéraire », ou c'est autre chose ? Tu es sur que c'est bien l'adresse avec le « é » qui est mis ?
Il faudra vérifier que WP n'écrase pas ta valeur.
-

JanoLapin - WRInaute accro

- Messages: 4052
- Inscription: 21 Sep 2008
Re: comment remplacer url avec accents dans htaccess
Je viens de faire un essai avec le htaccess que tu indiques (merçi de ton aide, au passage): et cela ne marche pas !
Pour éviter les embrouilles, j'ai évidemment neutralisé le rép. de redirection example.org/itinéraire en le renommant
Par ailleurs, d'après 404notifier, l'url example.org/itinéraire/ va se traduire par la requête example.org/itin%C3%A9raire/
==> on peut comprendre que ton code ne marche pas avec cela, alors mais pourquoi alors le répêrtoire de redirection /intinéraire (avec un index.php comprenant une redir 301) fonctionne-t-il, lui
Qu'en penser?
Quel serait le code correct pour rediriger l'url?
Pour éviter les embrouilles, j'ai évidemment neutralisé le rép. de redirection example.org/itinéraire en le renommant
Par ailleurs, d'après 404notifier, l'url example.org/itinéraire/ va se traduire par la requête example.org/itin%C3%A9raire/
==> on peut comprendre que ton code ne marche pas avec cela, alors mais pourquoi alors le répêrtoire de redirection /intinéraire (avec un index.php comprenant une redir 301) fonctionne-t-il, lui
Qu'en penser?
Quel serait le code correct pour rediriger l'url?
-

Leonick - WRInaute accro

- Messages: 19592
- Inscription: 8 Aoû 2004
Re: comment remplacer url avec accents dans htaccess
si l'adresse est codée en utf8, chaque caractère est codé sur 2 octets d'où le fait qu'il soit probable que la redirection sur 1 seul caractère pour remplacer le "e" ne fonctionne pas
-

JanoLapin - WRInaute accro

- Messages: 4052
- Inscription: 21 Sep 2008
Re: comment remplacer url avec accents dans htaccess
Dans le cas d'espèce, c'était un brouillon mail (codé avec Thunderbird en html normal), envoyé à quelqu'un sur sa boite yahoo qui a recopié et renvoyé à tout le monde depuis la même boite: aucune idée donc de l'encodage.
Quand je clique sur l'url du mail renvoyé à tout le monde, 404notifier m'indique que l'url appellée est example.org/itinéraire/
En tapant moi-même dans mon browser (avec utf-8 par défaut) l'expression example.org/itinéraire/, c'est bien l'url example.org/itin%C3%A9raire/ qui est appellée
C'est visible dans la barre d'adresse de FF, avant qu'il ne corrige de lui même et fasse apparaître example.org/itinéraire
404notifier m'indique la même chose.
Mon problème est donc bien de rediriger example.org/itin%C3%A9raire/ vers example.org/itineraire/
Quand je clique sur l'url du mail renvoyé à tout le monde, 404notifier m'indique que l'url appellée est example.org/itinéraire/
En tapant moi-même dans mon browser (avec utf-8 par défaut) l'expression example.org/itinéraire/, c'est bien l'url example.org/itin%C3%A9raire/ qui est appellée
C'est visible dans la barre d'adresse de FF, avant qu'il ne corrige de lui même et fasse apparaître example.org/itinéraire
404notifier m'indique la même chose.
Mon problème est donc bien de rediriger example.org/itin%C3%A9raire/ vers example.org/itineraire/
26 messages
• Page 1 sur 2 • 1, 2
Lectures recommandées sur ce thème :
- Remplacer le Virtualhost par .htaccess
- Espace et accents en htaccess
- [Résolu] Remplacer les + par des -
- Redirection sans les accents dans un htaccess
- [resolu] les accents dans le contenu
- [Résolu] Moteur de recherche interne et les accents
- [Résolu] Remplacer URL trop longues par des liens cliquables
- Soucis au niveau des accents - charset UTF-8 [Résolu]
- [Résolu] charset ISO 8859 et accents codés en UTF8
- [Résolu] Gestion des accents par Google pour le positionnement
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité
