Redirection 301 et réécriture d'url récalcitrantes

Discussion dans 'URL Rewriting et .htaccess' créé par 3bida, 26 Mai 2009.

  1. 3bida
    3bida WRInaute discret
    Inscrit:
    6 Juin 2007
    Messages:
    52
    J'aime reçus:
    0
    Bonjour,

    Je suis en train d'apporter quelques modifications à mon site dans l'optique d'avoir un meilleur référencement de la part des moteurs de recherche, notamment un certain nombre de pages qui sont écrites sous cette forme:

    h**p://www.monsite.com/?pg=3&page=category&category_id=305
    A noter: l'absence de index.php

    J'aimerai réécrire cette url sous cette forme:
    h**p://www.monsite.com/category305-3.html

    Or quand je fais ceci:

    Code:
    #redirection
    RewriteCond %{QUERY_STRING} ^pg=([0-9]+)&page=category&category_id=([0-9]+)$
    RewriteRule ^index\.php$ /category%2-%1.html? [R=301,L]
    
    #réécriture
    RewriteRule ^category([0-9]+)-([0-9]+)\.html$ /?pg=$1&page=category&category_id=$2&stop [L]
    Cela ne marche pas et en plus la page category305-3.html m'envoi vers la page category302.html (305-3 = 302), allez comprendre pourquoi !!

    Quelqu'un pourrait-il prendre quelques minutes de son temps afin de ma'ider à regler ce petit problème.

    Merci d'avance.
    Bruno

    EDIT: Je viens de comprendre pourquoi L'url réécrit renvoi vers une autre page. En fait c'est parceque "305-3" n'est pas traduit par category_id=305 et pg=3 mais comme une variable $_GET['category_id'] = 305-3; qui sera traitée par la suite.
    Donc l'url rewrting ne fonctionne pas.
     
  2. f123b
    f123b Nouveau WRInaute
    Inscrit:
    8 Juin 2009
    Messages:
    1
    J'aime reçus:
    0
    bonsoir, j'ai un problème de redirection 301 dans le htaccess:
    j'ai des urls de cette forme: search.php?keyword=$1&categorie=$2&page=$3&plusmoins=$4
    j'utilise la règle suivante dans le htaccess:

    Code:
    RewriteEngine On
    RewriteRule (.*)-(.*)-(.*)-(.*)\.html$  /search.php?keyword=$1&categorie=$2&page=$3&plusmoins=$4 [L]
    pas de problème les url sont bien réécrites,
    par contre ces données proviennent d'un formulaire qui utilise la méthode get et qui appelle le fichier search.php.
    Comment faire sans utiliser de header location ou de javascript, donc avec le htaccess pour avoir une redirection 301 quand on soumet le formulaire?

    j'ai essayer des règles de ce style:

    Code:
    RedirectPermanent /search.php?keyword=(.*)&categorie=(.*)&page=(.*)&plusmoins=(.*) /$1-$2-$3-$4\.html 
    mais ca ne fonctionne pas (boucle infini).

    peut être en utilisant RewriteCond %{QUERY_STRING} ... mais j'arrive pas à formuler la syntaxe.
     
Chargement...
Similar Threads - Redirection 301 réécriture Forum Date
Faire une redirection 301 et une réécriture en même temps (.htaccess) URL Rewriting et .htaccess 16 Décembre 2018
Redirection 301 apres reecriture url URL Rewriting et .htaccess 12 Novembre 2013
Redirection 301 après réécritures des urls obligatoire? Débuter en référencement 6 Juillet 2011
Problème classique de réécriture et de redirection 301 URL Rewriting et .htaccess 13 Avril 2011
Baisse du trafic après redirection 301 Problèmes de référencement spécifiques à vos sites 11 Août 2021
Search Console Créer des sitemap avec les redirections 301 Netlinking, backlinks, liens et redirections 14 Avril 2021
Configurer une redirection www (301) plutôt qu'une 302. URL Rewriting et .htaccess 29 Janvier 2021
Redirection 301 Domaines et structures différentes URL Rewriting et .htaccess 26 Janvier 2021
Suppression répertoire complet. Redirection 301 ou Erreur404 ? URL Rewriting et .htaccess 7 Janvier 2021
Redirection 301 et migration Problèmes de référencement spécifiques à vos sites 10 Décembre 2020