[Résolu] Variable Get et rewriting
8 messages
• Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
- shaolin974
- Nouveau WRInaute

- Messages: 3
- Inscription: 15 Fév 2008
[Résolu] Variable Get et rewriting
Bonjours,
Mon cas est très simple et pourtant je butte dessus :
Je voudrais réécrire ou rediriger la page index.php?name=animaux vers index.php?name=photo. Le truc c'est que des clients ont reçu il y a longtemps une newsletter avec le lien index.php?name=animaux et comme le site a changé ce lien n'existe plus.
Je ne vous donne que les régles de mon fichier htaccess car le reste fonctionne bien
RewriteRule index.php?name=animaux$ index.php?name=photo [QSA,L] -> ne marche pas
RewriteRule index.php[\?]name=animaux$ index.php?name=photo [QSA,L] -> ne marche pas
en revanche si j'entre une adresse du type animaux.html et que j'écrive cette règle
RewriteRule animaux.html$ index.php?name=photo [QSA,L] -> ça marche (mais ça ne me sert à rien...)
tous les exemples montrés dans les forums et autres sites indiquent toujours la meme chose. C'est à dire qu'il faut que l'adresse se finisse par .php ou .html et que tout ce qui est après le "?" semble ne pas être interprété.
Mon cas est très simple et pourtant je butte dessus :
Je voudrais réécrire ou rediriger la page index.php?name=animaux vers index.php?name=photo. Le truc c'est que des clients ont reçu il y a longtemps une newsletter avec le lien index.php?name=animaux et comme le site a changé ce lien n'existe plus.
Je ne vous donne que les régles de mon fichier htaccess car le reste fonctionne bien
RewriteRule index.php?name=animaux$ index.php?name=photo [QSA,L] -> ne marche pas
RewriteRule index.php[\?]name=animaux$ index.php?name=photo [QSA,L] -> ne marche pas
en revanche si j'entre une adresse du type animaux.html et que j'écrive cette règle
RewriteRule animaux.html$ index.php?name=photo [QSA,L] -> ça marche (mais ça ne me sert à rien...)
tous les exemples montrés dans les forums et autres sites indiquent toujours la meme chose. C'est à dire qu'il faut que l'adresse se finisse par .php ou .html et que tout ce qui est après le "?" semble ne pas être interprété.
Dernière édition par shaolin974 le Ven Fév 15, 2008 15:15, édité 1 fois.
-

nickargall - WRInaute accro

- Messages: 6339
- Inscription: 13 Juin 2005
Pour faire une redirection, autant utiliser redirectpermanent:
- Code: Tout sélectionner
RedirectPermanent /index.php?name=animaux http://www.example.com/index.php?name=photo
-

KOogar - WRInaute accro

- Messages: 3884
- Inscription: 16 Nov 2004
devrait marcher:
ou un Redirect
- Code: Tout sélectionner
RewriteCond %{REQUEST_URI} ^.*animaux.*
RewriteRule ^(.*)$ /index.php?name=photo [L]
ou un Redirect
- Vap
- WRInaute passionné

- Messages: 1090
- Inscription: 17 Juin 2007
Essaie ça:
- Code: Tout sélectionner
RewriteCond %{QUERY_STRING} ^name=animaux$
RewriteRule ^(.*)$ /index.php?name=photo [L]
- shaolin974
- Nouveau WRInaute

- Messages: 3
- Inscription: 15 Fév 2008
Merci à tous pour ces réponses mais seul celle là a pu m'avancer :
Un new problème est malheureusement survenu.
Je travaille sur une arborescence de site de ce type http://www.example.com/new_version/index.php mais il existe toujours http://www.example.com/index.php qui fait référence à l'ancien site.
J'ai donc adapté la requete en :
RewriteCond %{QUERY_STRING} ^name=animaux$
RewriteRule ^(.*)$ http://www.example.com/new_version/index.php?name=photo [L]
le truc étrange c'est que le .htacess se trouve dans le repertoire new_version mais lorsqu'il fait la redirection il me renvoie vers l'index.php à la racine du site.
Auriez vous une solution?
RewriteCond %{QUERY_STRING} ^name=animaux$
RewriteRule ^(.*)$ /index.php?name=photo [L]
Un new problème est malheureusement survenu.
Je travaille sur une arborescence de site de ce type http://www.example.com/new_version/index.php mais il existe toujours http://www.example.com/index.php qui fait référence à l'ancien site.
J'ai donc adapté la requete en :
RewriteCond %{QUERY_STRING} ^name=animaux$
RewriteRule ^(.*)$ http://www.example.com/new_version/index.php?name=photo [L]
le truc étrange c'est que le .htacess se trouve dans le repertoire new_version mais lorsqu'il fait la redirection il me renvoie vers l'index.php à la racine du site.
Auriez vous une solution?
-

Hearty - WRInaute discret

- Messages: 138
- Inscription: 23 Fév 2004
- Code: Tout sélectionner
RewriteCond %{QUERY_STRING} ^name=animaux$
RewriteRule ^(.*)$ index.php?name=photo [L]
- shaolin974
- Nouveau WRInaute

- Messages: 3
- Inscription: 15 Fév 2008
merci beacoup effectivement le / était de trop
Et bien mon problème est résolu merci à tous
edit pour en dessous : c'est toujours bon à savoir
Et bien mon problème est résolu merci à tous
edit pour en dessous : c'est toujours bon à savoir
Dernière édition par shaolin974 le Ven Fév 15, 2008 15:47, édité 1 fois.
8 messages
• Page 1 sur 1
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 :
- [Resolu] Probleme d'URL Rewriting avec variable texte
- [Résolu] Transformation de variable en constante PHP
- [Résolu] Récupération de variable en Get comprenant des -
- [résolu]Rewrite et les images en variable
- [Résolu] Transformer charset d'une variable en php.
- [Résolu] Faire suivre une variable sur un .js
- [résolu] Juste une variable, chez OVH
- [résolu] Propager variable a travers url de substitution ?
- [résolu] variable avec virgule et nombre aléatoire
- [RESOLU]ptite question avec un index.php variable
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
