Sujet: Redirections des anciennes URL

Bonjour,

Il y a quelques semaines encore, j’utilisais FluxBB et les URL étaient réécrites de la manière suivante :
www.example.net/forum/sujet-777-mot-cle

Aujourd’hui, j’utilise la réécriture File_based_fancy :
http://www.example.net/forum/topic777-mot-cle.html

Connaissez-vous un moyen de rediriger (redirection 301) toutes les URL
SUJET n° --> TOPIC n° ?

Merci.

10

2

Re: Redirections des anciennes URL

Bonjour!

J'ai trouvé un problème similiaire mentioné ici:
http://www.webmasterworld.com/apache/3365089.htm

mais j'ai pas la solution 1:1 pour ton cas....

10

3

Re: Redirections des anciennes URL

Bonjour !

Et merci.

En effet, je n’arrive pas à récupérer le numéro du sujet dans l’URL.

J’avais essayé ce code, trouvé sur le forum de Punbb :

$id = isset($_GET['id']) ? intval($_GET['id']) : 0;

if (preg_match('~.*sujet-*~', $_SERVER['REQUEST_URI']))
{
    $query = array(
        'SELECT'    => 't.subject AS subject',
        'FROM'        => 'topics AS t',
        'JOINS'        => array(
            array(
                'INNER JOIN'    => 'forums AS f',
                'ON'            => 'f.id=t.forum_id'
            ),
            array(
                'LEFT JOIN'        => 'forum_perms AS fp',
                'ON'            => '(fp.forum_id=f.id AND fp.group_id='.$forum_user['g_id'].')'
            )
        ),
        'WHERE'        => '(fp.read_forum IS NULL OR fp.read_forum=1) AND t.id='.$id.' AND t.moved_to IS NULL'
    );
    $page = 'sujet';
}


$result = $forum_db->query_build($query) or error(__FILE__, __LINE__);
if (!$forum_db->num_rows($result))
    message($lang_common['Bad request']);

list($subject) = $forum_db->fetch_row($result);

if ($page == 'sujet')
    $redirect_url = str_replace('&', '&', forum_link($forum_url['topic'], array($id, sef_friendly($subject))));

header('HTTP/1.1 301 Moved Permanently');    
header('Location: '.$redirect_url);

mais ça ne fonctionne pas car il faudrait que l’URL contienne id=numéro du sujet (si j’ai bien compris).

10

4

Re: Redirections des anciennes URL

Bonjour !

En fait, j’ai trouvé après des heures de recherche ! C’était pourtant simple big_smile

J’ai ajouté ce qui suit dans le .htaccess :

RedirectMatch permanent /forum/sujet(.*) http://www.example.net/forum/topic$1

Et voilà.

Bonne soirée !

00

5

Re: Redirections des anciennes URL

Merci!
J'ai presque posé la question dans un forum qui se specialise sur ces trucs aujourd'hui...
une bonne nouvelle alors pour commencer la semaine...

C'est vrai que ça vaux la peine de faire correct , si non tous les recherches google tombent dans l'eau....

00