Bonjour à tous,
je me galère depuis hier pour trouver la solution et ça commence à me saouler...
Je vous explique : auparavant, j'utilisais wordpress comme CMS et puis pour des raisons pratiques, j'ai changé pour joomla que je connais un peu mieux.
malheureusement, les url sont différentes et je dois donc les rediriger de manière permanente.
Dans mon fichier apache, j'ai essayé quelques trucs mais impossible...
Bon, la piste du php aurait été la plus simple à mettre en place. Peut être pas très clean mais simple... J'ai tenté d'incorporer le code dans l'index.php de joomla, à la racine du site :
mais, ça me met : erreur 310, trop de redirections...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <?php if (isset($_SERVER['QUERY_STRING'])&&($_SERVER['QUERY_STRING']!='')){ $query=$_SERVER['QUERY_STRING']; switch ($query){ case "p=598": //ancienne adresse wordpress $dev="ma/nouvelle/adresse"; //nouvelle adresse joomla break; case "p=599": $dev="ma/nouvelle/adresse2"; break; } } header('Location: '.'http://www.monsite.fr/'.$dev); //Redirection HTTP avec nom de site header('HTTP/1.1 301 Moved Permanently'); header('Status: 301 Moved Permanently'); ?>
donc cette piste est à abandonner je pense...
ensuite j'ai essayé, sans grande conviction :
mais comme à priori, apache ne gère pas les variables passées dans l'url, j'étais sûr à 99% du résultat...
Code : Sélectionner tout - Visualiser dans une fenêtre à part Redirect permanent /?p=598 http://monsite.fr/section/categorie/article
et là j'ai tenté d'améliorer un peu la réécriture d'url, mais c'est pas trop mon truc apache... si un pro pouvait venir à ma rescousse... je ne dois plus être très loin... :
Code:
D'avance merci à vous,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <IfModule mod_rewrite.c> Options +FollowSymlinks RewriteEngine on RewriteCond %{QUERY_STRING} ^p=598$ RewriteRule ^index.php$ index.php/tableaux-de-bord [R=301,L] </IfModule>
A bientôt,
Partager