.htaccess ne fonctionne pas (avec phpBB3)

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics

Galdon
WRInaute discret
WRInaute discret
 
Messages: 60
Inscription: Mer Déc 19, 2007 18:30

.htaccess ne fonctionne pas (avec phpBB3)

Message le Mar Sep 09, 2008 13:12

Bonjour, j'ai migré mon forum fluxBB vers phpBB3 et je souhaite mettre en place quelques redirections dans mon .htaccess. Voici les URL à rediriger :

/viewtopic.php?pid=45 => /post45.html#p45
/viewtopic.php?id=2 => /topic2.html
/profile.php?id=81 => /membre81.html


J'ai aussi quelques URL à rediriger sans REGEX, mais ce code ne fonctionne pas :

RedirectPermanent /viewforum.php?id=2 http://forum.finalclap.com/graphisme-et ... he-f2.html
RedirectPermanent /viewforum.php?id=16 http://forum.finalclap.com/compositing-f16.html

J'ai essayé avec RedirectMatch et une règle de réécriture, mais aucune des deux solutions ne fonctionne :

RedirectMatch 301 ^viewtopic.php?pid=([0-9]+)$ /post$1.html

RewriteEngine on
RewriteRule ^viewtopic.php?pid=([0-9]+)$ /post$1.html [R=301]


Comment faire ?

Merci


webmasterlamogere
WRInaute accro
WRInaute accro
 
Messages: 1874
Inscription: Dim Déc 17, 2006 21:08

Message le Mar Sep 09, 2008 15:23

avec cette technique : -http://www.urlrewriting.fr/article-08,07,17,Eti@-Redirection-9.html

Galdon
WRInaute discret
WRInaute discret
 
Messages: 60
Inscription: Mer Déc 19, 2007 18:30

Message le Mar Sep 09, 2008 17:17

Bah oui, c'est exactement ce que j'ai appliqué :

Code: Tout sélectionner
RewriteEngine on

RewriteRule ^viewtopic.php?pid=([0-9]+)$ /post$1.html#p$1 [R=301,L]


Mais quand j'accède à http://localhost/viewtopic.php?pid=45 par exemple, j'ai cette erreur :

Not Found

The requested URL /viewtopic.php was not found on this server.


Ça signifie que la réécriture n'a pas fonctionné, sinon j'aurais été redirigé vers la nouvelle URL.


webmasterlamogere
WRInaute accro
WRInaute accro
 
Messages: 1874
Inscription: Dim Déc 17, 2006 21:08

Message le Mar Sep 09, 2008 18:48

c'est pas ce qui est indiqué pour une url avec paramètre ;)
Code: Tout sélectionner
RewriteEngine on

RewriteCond %{QUERY_STRING} ^pid=([0-9]+)$
RewriteRule ^viewtopic\.php$ /post%1.html?#p%1 [R=301,L]

Galdon
WRInaute discret
WRInaute discret
 
Messages: 60
Inscription: Mer Déc 19, 2007 18:30

Message le Mar Sep 09, 2008 22:03

J'avoue, j'ai été trop vite.

En fait c'est le point d'interrogation (qui sert de délimiteur pour la QUERY_STRING) qui est "interprété" au lieu d'être simplement lu comme une chaîne.

J'ignorais cela, alors quand j'ai vu les RewriteCond 8O, je ne me suis même pas demandé pourquoi ils utilisaient cette technique et je suis passé à côté.

Merci pour le morceau de code.


Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités