Perrine Posté 24 Avril 2006 Posté 24 Avril 2006 (modifié) Bonjour à tous, Je viens de transférer mon forum phpBB vers SMF et fatalement, les URL sont différentes. Voici la règle que je viens de tester (grâce aux explications données par Dan). Malheureusement, cela ne fonctionne pas : RewriteRule forum-phpbb/forum-([0-9]+)\.html http://www.histwar.com/forum/index.php/board,$1.0.html [R=301,L] Je l'insère dans un .htaccess existant (j'ai pensé qu'il pouvait y avoir des incompatibilités) <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_HOST} ^histwar.com$ RewriteRule (.*) http://www.histwar.com/$1 [R=301,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^(.+) - [PT,L] RewriteRule ^(.*) /~histcom/index.php RewriteRule /forum-phpbb/forum-([0-9]+)\.html http://www.histwar.com/forum/index.php/board,$1.0.html [R=301,L]</IfModule> Ce .htaccess est à la racine du site. L'ancienne URL d'un forum est forum-1.html et la nouvelle est index.php/board,1.0.html Quelqu'un comprend pourquoi cela ne fonctionne pas ? Merci par avance Modifié 24 Avril 2006 par Perrine
TheRec Posté 24 Avril 2006 Posté 24 Avril 2006 Ton cas serait plutôt à traiter d'habord par RedirectMatch... (nécessite le mod_alias) puis le Rewritting mis en place avec SMF se chargera du reste... Dans ton cas cela donnera : RedirectMatch 301 forum-phpbb/forum-([0-9]+)\.html http://www.histwar.com/forum/index.php/board,$1.0.html À placer avant les règles de réécriture de préférence Il faut savoir qu'avec le mod_rewrite lorsque tu utilises une RewriteRule et que le deuxième argument commence par "http://" cette partie est automatiquement enlevée (à moins d'utiliser le flag R=XXX, comme tu l'as fait)... le mod_rewrite n'est pas prévu pour des redirections, il peut en faire, mais il faut plutôt le voir comme un module permettant de présenter un contenu accessible par une URL avec une autre URL (plus propre en général )
Perrine Posté 25 Avril 2006 Auteur Posté 25 Avril 2006 Merci pour ces explications Je vais demander à Dan (qui se charge de mon dédié chez OVH) si je dispose du mod_alias car j'avoue que je n'ai pas l'habitude de traiter ces questions de config
TheRec Posté 25 Avril 2006 Posté 25 Avril 2006 C'est un module assez utilisé...si je ne m'abuse il est chargé par défaut lors de l'installation de Apache. Il te suffit d'essayer d'utiliser un RedirectMatch ou RedirectPermanent dans ton fichier .htaccess ... tu verras tout de suite si la redirection fonctionne ou non
Perrine Posté 25 Avril 2006 Auteur Posté 25 Avril 2006 Ah le RedirectPermanent, je l'utilise assez souvent et Dan vient de me confirmer que mod_alias est installé donc je m'en vais tester ta solution Merci
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant