Rediriger un répertoire qui n'existe plus vers l'accueil

Nouveau WRInaute
Bonjour,

Je n'y connais rien en url rewriting et j'ai besoin de rediriger les liens d'un forum que je viens de supprimer vers la page d'accueil.

J'ai par exemple des liens référencés dans google du type :
http://www.monsite.com/forum/index.html?c=5 ou encore
http://www.monsite.com/forum/viewpost99.html

et je veux les envoyer vers www.monsite.com/index.htm

Mes essais me créent des url comme celle-ci : www.monsite.com/index.htmviewpost99.html....donc ça ne marche pas..

Quelqu'un saurait-il me rediriger vers le bon tutoriel car je n'ai trouvé que des tutoriels qui renvoient de répertoire à répertoire mais pas de répertoire à 1 fichier..ou bien m'écrire la rédirection qui convient.

Merci beaucoup

Nadine
 
WRInaute accro
Essaie ceci:
Code:
Options +FollowSymlinks
RewriteEngine on 
RewriteRule ^forum\/ http://www.monsite.com/index.htm [L,R=301]
Jean-Luc
 
Nouveau WRInaute
rock-mantique a dit:
y'a t'il quelque chose d'autre dans ton fichier htaccess a par les lignes que je t'ai donné ?

Oui il y a les lignes du .htaccess de Joomla par défaut (épuré des lignes commentées) :

------------------------------------------------------------
Options +FollowSymLinks
RewriteEngine On

RewriteBase /rep

RewriteCond %{REQUEST_URI} ^(/rep/component/option,com) [NC,OR]
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php

RedirectPermanent /index.htm http://www.monsite.com/rep/index.php

----------------------------------------------------

Merci pour ton aide
Nadine
 
WRInaute discret
en temps normal , j'aurai dit d'enlever ces quelques lignes , mais appartenant a joomla je te suggere de mettre

Code:
RedirectPermanent /forum/ http://www.monsite.com/index.htm

au debut de ton htaccass

:wink:
 
WRInaute accro
Si on utilise
Code:
RedirectPermanent /forum/ http://www.monsite.com/index.htm
on va rediriger http://www.monsite.com/forum/blabla.html vers http://www.monsite.com/index.htmblabla.html. C'est pourquoi, il faut utiliser "RewriteRule", mais il faut le mettre avant les directives Joomla.

A part ça, je ne comprends pas pourquoi tu veux faire deux redirections successives:
http://www.monsite.com/forum/blabla.html
=> redirection 301 =>
http://www.monsite.com/index.htm
=> redirection 301 =>
http://www.monsite.com/rep/index.php

Jean-Luc
 
Nouveau WRInaute
Si je sais rediriger vers index.html, je saurai le faire vers rep/index.php !!
C'était pour simplifier pour l'exemple.

Donc en vérité, il y a une redirection car mon fichier index.php n'est pas à la racine :
RedirectPermanent /index.htm http://www.monsite.com/rep/index.php

Et il y a une redirection pour le forum qui n'existe plus, du genre :
RedirectPermanent /forum http://www.monsite.com/rep/index.php
mais ça, ça ne marche pas..et je ne connais pas les règles de RewriteRule

Si quelqu'un peut aider..

Merci
Nadine
 
WRInaute accro
Voici mon interprétation: tu nous demandais de rediriger vers /index.htm, mais comme /index.htm n'existe pas, c'est Joomla qui envoie un code 404 avant que tu ne fasses la dernière redirection vers /rep/index.php.

Ce serait plus efficace de nous donner tous les éléments du problème au début, plutôt que petit à petit. :wink:

J'essaierais ceci:
Code:
Options +FollowSymLinks 
RewriteEngine On 
RewriteRule forum\/ http://www.monsite.com/rep/index.php [L,R=301]

RedirectPermanent /index.htm http://www.monsite.com/rep/index.php

RewriteBase /rep 

RewriteCond %{REQUEST_URI} ^(/rep/component/option,com) [NC,OR] 
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule (.*) index.php
Jean-Luc
 
Nouveau WRInaute
Non ça renvoie toujours une erreur 404.

Par contre, s'agissant de pages supprimées, j'ai trouvé ça qui fonctionne bien :

ErrorDocument 410 http://www.monsite.com
Redirect 410 /forum

Les pages sont redirigées sur la homepage avec des codes 302 (livehttpheaders de Firefox), donc je suppose que le page rank suit...?

Qu'en pensez-vous ?

Merci
Nadine
 
WRInaute impliqué
Essaie :

Code:
Options +FollowSymlinks
RewriteEngine on
RewriteRule forum\/(.*) http://www.monsite.com/index.htm [L,R=301]
 
WRInaute impliqué
Dans le répertoire /site/, met un .htaccess (si tu es sur un hébergement linux) avec ce qui suit dedans:

Code:
RewriteEngine On

RewriteRule (.*) http://www.monsite.com/accueil.html [R=301]
 
Discussions similaires
Haut