[Redirection 301] index.php?page=var vers var.html

Discussion dans 'URL Rewriting et .htaccess' créé par Boeing, 6 Août 2007.

  1. Boeing
    Boeing WRInaute discret
    Inscrit:
    22 Février 2004
    Messages:
    50
    J'aime reçus:
    0
    Bonsoir,

    Voilà, j'ai fait mon url rewriting, tout est OK.

    Mon site est récent, mais google a déja indexé des pages non rewrité, (~27).
    Je veux que maintenant, il "oublie" les anciennes URL, au profit des nouvelles.

    J'ai essayé différentes manières de rediriger index.php?page=$var, vers var.html en 301, mais j'ai pas pu.

    J'ai cru savoir qu'il fallait utiliser un query string..
    mais je me perds.

    PS:
    J'ai trois type d'urls rewritées :
    index.php?page=var, vers var.html
    index.php?page=var&id=id, vers var-id.html
    index.php?page=$var&id=id&p=npage, vers var-id-npage.html

    Deuxième question,
    Je voudrai pouvoir rewrité,
    index.php?page=$var&id=id&p=1, vers var-id.html
    et même var-id-1.html vers var-id.html.

    Merci de votre aide.
    Bonne soirée. :)
     
  2. HawkEye
    HawkEye WRInaute accro
    Inscrit:
    23 Février 2004
    Messages:
    13 857
    J'aime reçus:
    5
    Quelques if($var), if($id) et if($p) plus tard, au tout début du code de ton index.php, tu pourras générer aisément un, deux ou trois

    Code:
    	header("Status: 301 Moved Permanently", false, 301);
    	header("Location: http://".$_SERVER['HTTP_HOST']."/");
    	exit;
    
    qui te conviendront ;)
     
  3. Boeing
    Boeing WRInaute discret
    Inscrit:
    22 Février 2004
    Messages:
    50
    J'aime reçus:
    0
    Je vais essayé, merci.

    Mais j'aurai aimé le faire par le biais du htaccess, mais c'est pas grave.

    Merci quand même.
     
  4. Superbaloo
    Superbaloo Nouveau WRInaute
    Inscrit:
    11 Mars 2007
    Messages:
    18
    J'aime reçus:
    0
    ooooops
    Code:
    RewriteEngine on
    RewriteBase /
    RewriteRule ^index.php\?page=(.+)&id=(.+)&p=(.+)$ /$1-$2-$3.html [R=301,L]
    RewriteRule ^index.php\?page=(.+)&id=(.+)$ /$1-$2.html [R=301,L]
    RewriteRule ^index.php\?page=(.+)$ /$1.html [R=301,L]
    
    


    Et on remercie chaleureusement le moderateur qui supprime des posts avec des infos a l'interieur ... (Celui duquel ce post venait comme correction)
     
  5. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 643
    J'aime reçus:
    82
    lol, de la maniere dont le sujet est présenté, tout porte a croire qu'il veut une urlrewriting mais naaann !!! il a deja le rewrite, ce qu'il veut c'est la redirection php maintenant...
     
  6. Superbaloo
    Superbaloo Nouveau WRInaute
    Inscrit:
    11 Mars 2007
    Messages:
    18
    J'aime reçus:
    0
    Alors http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html

    c'est bien une redirection que je fais, dans le cas ou ca ne marche pas faire
    Code:
    RewriteEngine on
    RewriteBase /
    RewriteRule ^index.php\?page=(.+)&id=(.+)&p=(.+)$ http://example.com/$1-$2-$3.html [R=301,L]
    RewriteRule ^index.php\?page=(.+)&id=(.+)$ http://example.com/$1-$2.html [R=301,L]
    RewriteRule ^index.php\?page=(.+)$ http://example.com/$1.html [R=301,L] 
    Il faut savoir utiliser les technologies adaptes au problème. Il souhaitait un redirection sur un htaccess, et il a parfaitement raison, il n'y a aucun besoin de php ici.
     
  7. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 643
    J'aime reçus:
    82
    relis le sujet du topic. Son rewrite est deja en place et ce n'est pas avec un simple tag [R=301] que Google va desindéxer ses anciennes pages. La solution est php...
     
  8. Superbaloo
    Superbaloo Nouveau WRInaute
    Inscrit:
    11 Mars 2007
    Messages:
    18
    J'aime reçus:
    0
    Avec le rewrite que j'ai donner (qui est en fait une redirection), lors que tu vas sur la page index.php?page=jsaispasquoi tu recois un header avec une erreur 301 moved permanently, qui te renvois sur /jesaispasquoi.html.

    La solution que je donne est IDENTIQUE a celle en php, elle ne fait juste pas appel a php. Mais directement a apache.
     
  9. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 643
    J'aime reçus:
    82
    parceque toi dans le meme fichier .htaccess tu arrive a faire

    la reecriture normal

    Code:
    RewriteRule ^page-(*.)\.html$  http://example.com/page.php?id=$1 [L]
    et sa redirection...

    Code:
    RewriteRule ^page.php\?id=(.+)$ http://example.com/page-$1.html [R=301,L]

    explique moi quand ca marche ?? je sens qu'on va y passer des heures si tu te rend pas vite compte de l'enormité du probleme.
    On va faire comme le code source, boucler, boucler.... zzzzzzzzzz

    remarque en y repensant, si le tag [L] est bien respecté, ca devrait le faire. As tu testé en production ce que tu proposes ?
     
  10. Superbaloo
    Superbaloo Nouveau WRInaute
    Inscrit:
    11 Mars 2007
    Messages:
    18
    J'aime reçus:
    0
    Voila :)

    il suffit de mettre la redirection AVANT la reecriture, et encore que les deux doivent marcher
     
Chargement...
Similar Threads - [Redirection 301] php Forum Date
[Redirection 301] Impossible de la faire fonctionner URL Rewriting et .htaccess 14 Février 2012
[redirection 301] Spécificités liés au site Netlinking, backlinks, liens et redirections 5 Avril 2011
[redirection 301] NDD rediriger et mots clé pour le référencement! Référencement Google 29 Mai 2009
[redirection]mise à jour de site Netlinking, backlinks, liens et redirections 22 Mai 2009
[Redirections d'url] Supprimer des éléments de l'url URL Rewriting et .htaccess 28 Avril 2007
[redirection] ai-je bien fait??? Débuter en référencement 24 Octobre 2004
[301] Supprimer tous les caractères après un slash URL Rewriting et .htaccess 22 Mars 2013
[RESOLU] règle [R=301] ne conserve pas mon url propre URL Rewriting et .htaccess 8 Juillet 2010
Redirection permanente des pages d'un domaine [R=301] URL Rewriting et .htaccess 14 Juin 2008
Question sur le [R=301] Netlinking, backlinks, liens et redirections 3 Janvier 2006
(résolu) [R=301] ou [R=301 L] URL Rewriting et .htaccess 22 Juillet 2005