Nouvelle url contient plus de variables que l'ancienne

Discussion dans 'URL Rewriting et .htaccess' créé par phab, 18 Mai 2013.

  1. phab
    phab Nouveau WRInaute
    Inscrit:
    22 Juillet 2008
    Messages:
    13
    J'aime reçus:
    0
    Bonjour à tous,
    J'essaie de faire court, ma nouvelle url contient une variable de plus que l'ancienne.
    Comment alors faire un redirect (si cela est possible) de l'ancienne vers la nouvelle ?

    Anciennes url:
    RewriteRule ^interview/(.*)/(.*)$ /bande-annonce-content-interview.php?product_title=$1&title=$2 [L]

    Nnouvelle url souhaité:
    RewriteRule ^interview/(.*)/(.*)/(.*)$ /bande-annonce-content-interview.php?name=$1&product_title=$2&title=$3 [L]

    J'avoue avoir tenté beaucoup de choses, mais sans succès.
    Je m'en remet au public ^^

    Merci d'avance pour votre aide.
     
  2. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 024
    J'aime reçus:
    1
    Si tu ne donne pas l'url de départ (celle des liens visible par les internautes) tu ne risque pas d'avoir des réponses ;-)
     
  3. phab
    phab Nouveau WRInaute
    Inscrit:
    22 Juillet 2008
    Messages:
    13
    J'aime reçus:
    0
  4. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 024
    J'aime reçus:
    1
    ça confirme que je comprend pas bien l'histoire ... :? j'avais fouillé un peu sur ton www pour voir mais je n'avais rien trouvé.

    RewriteRule ^interview/(.*)/(.*)/(.*)$ /bande-annonce-content-interview.php?name=$1&product_title=$2&title=$3 [L]

    ne peut pas "fonctionner" car l'url que tu présente a deux niveau de dossier (a partir d'interview) au lieu de trois comme ta règle le laisse supposer.

    interview/(.*)/(.*)/(.*)

    interview/fast-furious-6/relation-entre-les-acteurs-du-film
    peux tu expliquer ce que sont tes paramètres a récupérer. C'est peut être moi qui suit pas réveillé mais je ne voie pas bien a quoi ça correspond dans l'url que tu souhaite réécrire.
     
  5. phab
    phab Nouveau WRInaute
    Inscrit:
    22 Juillet 2008
    Messages:
    13
    J'aime reçus:
    0
    Bonjour zeb,

    Ce que je veux faire (depuis le début) c'est remplacer le nom du film par le nom de l'invité:
    "interview/fast-furious-6/relation-entre-les-acteurs-du-film"
    à:
    "interview/paul-walker/relation-entre-les-acteurs-du-film"

    Alors comment faire un redirect 301 permanent de :
    RewriteRule ^interview/(.*)/(.*)/(.*)$ /bande-annonce-content-interview.php?product_title=$2&title=$3 [L]
    vers :
    RewriteRule ^interview/(.*)/(.*)/(.*)$ /bande-annonce-content-interview.php?name=$1&title=$3 [L]

    Merci d'avance,
    Phab
     
  6. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 163
    J'aime reçus:
    338
    C'est exactement le meme regex, donc je vois pas comment tu px faire avec .htaccess.
     
  7. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 024
    J'aime reçus:
    1
    Outre le fait que tu perd tes urls d'origine ce qui n'est JAMAIS un bon plan, tu ne peut en effet pas faire la différence entre ta structure 1 et la 2 en revanche il suffit que ton script n'utilise pas le même champ (ou la même requête sql) pour sélectionner le contenu dans la base et c'est réglé.
     
  8. phab
    phab Nouveau WRInaute
    Inscrit:
    22 Juillet 2008
    Messages:
    13
    J'aime reçus:
    0
    Désolé zeb, je suis perdu après ta dernière remarque:
    en revanche il suffit que ton script n'utilise pas le même champ (ou la même requête sql) pour sélectionner le contenu dans la base et c'est réglé

    Pourrais-tu s'il te plait être plus précis concernant ce dernier point.

    Merci d'avance,
    Phab
     
  9. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 024
    J'aime reçus:
    1
    Bah ton url fait appel à un même script et tu souhaite via ta réécriture faire figurer le nom du film par l'invité, il suffit donc de modifier le script pour que l'affichage évolue comme tu le souhaite et changer toutes tes urls avec le nom de l'invité mais pas celui du film. La règle du htaccess ne change pas c'est le script qui fait plu le même travail.
     
  10. phab
    phab Nouveau WRInaute
    Inscrit:
    22 Juillet 2008
    Messages:
    13
    J'aime reçus:
    0
    Oui, dans le html, je remplace simplement ma variable "titre" par celle du "nom", effectivement cela n'était pas un problème, tout fonctionne sans plus d'effort d'ailleurs ^^

    Mais les anciennes urls (celles avec le titre) arrivent également à afficher cette même page...
    C'est là que je en sais pas comment faire pour que la page ne s'affiche qu'avec le "nom".

    Peut-être faire un test dans le header de la page en question et faire un en php un redirect 301 permanent ?
    Qu'en penses-tu ?
     
  11. phab
    phab Nouveau WRInaute
    Inscrit:
    22 Juillet 2008
    Messages:
    13
    J'aime reçus:
    0
    Voici ce que j'obtiens avec ma méthode précédente en testant la réponse du serveur:
    HTTP/1.1 301 Moved Permanently
    Server: Apache
    Set-Cookie: PHPSESSID=ncs5v7cceouda1j6kmd7hsq2i4; path=/
    Expires: Thu, 19 Nov 1981 08:52:00 GMT
    Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
    Pragma: no-cache
    Status: 301 Moved Permanently
    Location: /interview/paul-walker/relation-entre-les-acteurs-du-film
    Vary: Accept-Encoding
    Content-Type: text/html; charset=UTF-8
    Date: Sun, 19 May 2013 15:52:51 GMT
    Connection: keep-alive

    En résumé, dans la page, je teste la variable qui est passée en get.
    Si elle correspond au nom, c'est ok.
    Si elle correspond au titre, je fais un redirect 301 permanent.

    Est-ce que cette solution te semble "propre" ou envisageable en l'état ?

    Merci d'avance,
    Phab
     
  12. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 024
    J'aime reçus:
    1
    ça semble bon même si je comprend pas bien pourquoi tu décide de changer tes urls ....
     
Chargement...
Similar Threads - Nouvelle contient variables Forum Date
Nouvelle publicité ou test A/B Facebook Ads Facebook 13 Avril 2022
Référencement des nouvelles pages Référencement Google 20 Février 2022
Ranker nouvelle chaine youtube YouTube, Google Images et Google Maps 12 Décembre 2021
Sous-domaine ou domaine dédié pour une nouvelle marque Demandes d'avis et de conseils sur vos sites 7 Juillet 2021
Nouvelle page ou redirection ? Référencement Google 14 Juin 2021
Cookies : les nouvelles règles de 2021 : vos questions Administration d'un site Web 10 Mars 2021
Stimuler GoogleBot pour crawler de nouvelles pages Crawl et indexation Google, sitemaps 24 Janvier 2021
Spam de nouvelles Inscriptions sur Presta e-commerce 30 Décembre 2020
Ma nouvelle boutique, vous en dites quoi ? Demandes d'avis et de conseils sur vos sites 31 Août 2020
Nouvelle alerte CMP sur compte Adsense AdSense 13 Août 2020
Problème déploiement nouvelle version app sur Android Développement d'un site Web ou d'une appli mobile 5 Août 2020
Search Console Nouvelles pages non indexées Problèmes de référencement spécifiques à vos sites 1 Mai 2020
Astuce Otage financier: OVH et autres, une nouvelle tendance? Le café de WebRankInfo 6 Mars 2020
Nouvelle méthode SEO méthode américaine Référencement Google 16 Octobre 2019
Nouvelle présentatation des résultats du moteur de recherche google Référencement Google 5 Octobre 2019
Choix nom de domaine pour site secondaire activité Australie (.com.au) et Nouvelle Zélande (.co.nz) Référencement international (langues, pays) 23 Septembre 2019
Nouvelles directives de la CNIL (cookies et traceurs) Droit du web (juridique, fiscalité...) 2 Septembre 2019
En combien de temps Google indexe une nouvelle page ? Débuter en référencement 12 Avril 2019
Search Console Titres et descriptions en double dans la nouvelle search console Google : l'entreprise, les sites web, les services 10 Avril 2019
Rediriger ancienne page vers nouvelle page (plusieurs centaines) URL Rewriting et .htaccess 8 Mars 2019