Rewrite

Bonjour

j'ai un petit problème, depuis que je suis passé avec des url de type html comme celle là http://www.u2france.com/article12941.html, les anciennes url de type http://www.u2france.com/spip.php?article7172 que l'on trouve toujours sur google ne fonctionnent plus. J'ai essayé de modifier mon .htaccess mais je pense ne pas avoir la bonne règle.

Y a t il une bonne âme pour me donner une piste pour obtenir le bon RewriteRule.

Cordialement

Dom

Bonsoir,

Peut-être en s'inspirant des modifs que j'ai faites récemment sur propres.php

function recuperer_parametres_url(&$fond, $url) {
  global $contexte;
  $id_objet = 0;

  // Migration depuis anciennes URLs ?
  // Correction MDB 080809 de bug ((article )?)
  if ($GLOBALS['_SERVER']['REQUEST_METHOD'] != 'POST' AND
  (preg_match(
  ',(^|/)((article|breve|rubrique|mot|auteur|site)(\.php3?|[0-9]+\.html)
  ([?&].*)?)$,', $url, $regs)
  )) {
    $type = $regs[3];
    $id_objet = intval($GLOBALS[$id_table_objet = id_table_objet($type)]);
  }

  /* Compatibilite urls-page */
  else if (preg_match(
  // 3 lignes améliorées MDB 080809 pour éviter bug à l'appel spip.php?articleN
  // qd le titre de l'article commence par articleM
  // ou + généralement qd la breve,rubrique etc. commence par breveM, rubriqueM
  ',(spip.php)[?/&](article|breve|rubrique|mot|auteur|site)[=]?([0-9]+),',
  $url, $regs)) {
    $type = $regs[2];
    $id_objet = $regs[3];
  }

  if ($id_objet) {
    $func = "generer_url_$type";
    $url_propre = $func($id_objet);
    if (strlen($url_propre)
    AND !strstr($url,$url_propre)) {
  // correction de bug : ajout 080809 de la ligne suivante
      include_spip('inc/headers');
      http_status(301);
      // recuperer les arguments supplementaires (&debut_xxx=...)
      $reste =
preg_replace('/^&/','?', preg_replace("/[?&]$id_table_objet=$id_objet/",'',$regs[5]));
      redirige_par_entete("$url_propre$reste");
    }
  }
  /* Fin compatibilite anciennes urls */

Je suis curieux de savoir si cela peut aider,

Marc

---------

Selon Dom Pineau <dom@u2france.com>:

Bonjour

j'ai un petit problème, depuis que je suis passé avec des url de type
html comme celle là http://www.u2france.com/article12941.html, les
anciennes url de type http://www.u2france.com/spip.php?article7172 que
l'on trouve toujours sur google ne fonctionnent plus. J'ai essayé de
modifier mon .htaccess mais je pense ne pas avoir la bonne règle.

Y a t il une bonne âme pour me donner une piste pour obtenir le bon
RewriteRule.

Cordialement

Dom