Je m'arrache les cheveux...

Discussion dans 'URL Rewriting et .htaccess' créé par adonnante, 3 Décembre 2014.

  1. adonnante
    adonnante Nouveau WRInaute
    Inscrit:
    3 Décembre 2014
    Messages:
    5
    J'aime reçus:
    0
    Bonjour,

    alors voila j'ai une colle pour l'une de mes url rewriting.

    google a indexé de nombreuses urls du type
    www.monsite.com/423895-blabla/www.nomdedomaine.com
    ou
    www.monsite.com/423895-blabla/nomdedomaine.com

    because un <a href...> était mal formaté dans mon site.

    Bref, depuis il a gardé ces url en mémoire et essaye de les indexer régulièrement. Je pourrais faire une demande via Google Webmaster pour les désindexer, mais il y en a des milliers, donc à la mano...

    Bref j'essaye donc de rediriger via Htaccess l'url
    www.monsite.com/423895-blabla/www.nomdedomaine.com
    vers
    www.monsite.com/423895-blabla

    ou blabla contient : des lettres, des chiffres et des -

    J'ai tenté plusieurs écritures en vain. Ma dernière serait celle là, mais cela ne marche toujours pas.
    Options +FollowSymLinks
    RewriteEngine On
    RewriteRule ^([0-9]*)-(-[a-z0-9]*)/([a-z0-9]*)$ /$1 [NC,L] # Get archive by year

    . le début doit commencer par des chiffres
    . ensuite un -
    . ensuite un blabla minuscule avec tirets et/ou chiffre
    . et enfin du texte après un /

    Par avance merci pour vos lumières éclairées !

    Tout de bon

    Gilles
     
  2. cduray
    cduray Nouveau WRInaute
    Inscrit:
    7 Avril 2008
    Messages:
    38
    J'aime reçus:
    0
    Hello,

    A vue de nez, un truc comme ça pourrait aller:

    Code:
    RewriteEngine On
    RewriteRule ^([0-9]*-[a-z0-9\-]*)/[a-z0-9\-\.]*$ /$1 [NC,L]
    
     
  3. ybet
    ybet WRInaute accro
    Inscrit:
    22 Novembre 2003
    Messages:
    9 059
    J'aime reçus:
    0
    Honnêtement, suis nettement plus faible en URL Rewriting que Cduray mais quelques explications quand même:
    j'ai régulièrement ce type de pages reprises dans un système de vérification utilisateurs et souvent aussi ... Google les analyse (la barre d'outils Google). Ce sont souvent des tentatives de hack, voir des aspirateurs / robots mal programmés.

    Je n'utilisent jamais d'URL Rewriting sur mes sites: ce n'est pas forcément des erreurs à ce niveau tes pages indexées mais aussi des liens qui essayent d'analyser les pages d'une manière différentes.

    Pour quelques pages, j'ai simplement implanté en début de code:

    <?php
    $adresse_reel="/cidr.php";
    // echo $adresse."<br>";
    $page=$_SERVER['REQUEST_URI'];
    if ($page<>$adresse_reel)
    {
    // on interdit l'accès
    header("HTTP/1.1 403 Forbidden");
    exit();
    }
    ?>
    et bizarement, ces trucs disparaissent sur un paquet d'autres pages.
     
  4. adonnante
    adonnante Nouveau WRInaute
    Inscrit:
    3 Décembre 2014
    Messages:
    5
    J'aime reçus:
    0
    Merci Cduray, mais non...

    J'ai tenté de suivre ton idée et de faire
    RewriteRule ([0-9]+)-([^/]+)/([^/+]) /$1 [R=301,L]

    mais non plus...

    je cherche, je cherche...
     
  5. adonnante
    adonnante Nouveau WRInaute
    Inscrit:
    3 Décembre 2014
    Messages:
    5
    J'aime reçus:
    0
    Merci à tous d'avoir fait avancé le schmilblik.
    j'ai finalement trouvé LA solution

    OK
    Code:
    RewriteRule ^([0-9]*)-([^/]*)/([^*]) /$1-$2	[R=301,L]
    
    qui est trés proche du code juste de mon post précédent
    KO
    Code:
    RewriteRule ^([0-9]*)-([^/]*)/([^/*]) /$1-$2	[R=301,L]
    à la nuance prés du / dans la dernière régle.
    En effet ce / dans l'ultime reg oblige a ce que l'url globale se termine par un /, ce qui n'est pas toujours le cas....

    Merci à vous.
    Je vais maintenant tester une redirection pour une image, donc je reviens vers vous si j'y arrive pas, et si j'y arrive je donnerai ma soluce.

    Tout de bon

    Gilles