touta Posté 18 Novembre 2009 Partager Posté 18 Novembre 2009 Bonjour, Je débute avec le fichier .htaccess et voudrais un coup de main svp... J'ai restructuré mon site web en créant un sous-répertoire /rep1; je dois rediriger tous mes fichiers du repertoire racine vers le mêmes fichiers dans le répertoire /rep1 sauf si la requete est: 1. www.monsite.com ou 2. www.monsite.com/index.htm qui doit être alors dirigée vers www.monsite.com/index.htm D'avance merci. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Patrick Posté 18 Novembre 2009 Partager Posté 18 Novembre 2009 Salut Touta et bienvenue sur le Hub. Pour t'aider, tu peux consulter les publication suivantes du Hub : - http://www.webmaster-hub.com/publication/La-reecriture-d-URL-recursive.html - http://www.webmaster-hub.com/publication/Le-fichier-htaccess.html - http://www.webmaster-hub.com/publication/Mod-rewrite-ou-la-reecriture-des.html si tu ne trouves pas ton bonheur dans ces publications n'hésite pas à nous le dire, on te donnera un coup de mains. ++ Patrick Lien vers le commentaire Partager sur d’autres sites More sharing options...
touta Posté 18 Novembre 2009 Auteur Partager Posté 18 Novembre 2009 Merci Patrick J'ai essayé ceci dans mon fichier .htaccess à la racine du site: RewriteCond %{REQUEST_URI} !^index\.htm$ RewriteRule ^(.*).htm$ http://www.monsite.com/rep1/$1.htm [L,R] mais j'obtiens toujours un message d'erreur.... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Patrick Posté 18 Novembre 2009 Partager Posté 18 Novembre 2009 Merci de donner l'intégralité de ton .htaccess stp. Est ce qu'avec seulement la ligne (dans ton .htaccess) RewriteEngine on tu as un message d'erreur ? ++ Patrick Lien vers le commentaire Partager sur d’autres sites More sharing options...
touta Posté 18 Novembre 2009 Auteur Partager Posté 18 Novembre 2009 Merci de donner l'intégralité de ton .htaccess stp. Est ce qu'avec seulement la ligne (dans ton .htaccess) RewriteEngine on tu as un message d'erreur ? ++ Patrick non, pas de problème Touta Lien vers le commentaire Partager sur d’autres sites More sharing options...
Arlette Posté 18 Novembre 2009 Partager Posté 18 Novembre 2009 Merci de donner l'intégralité de ton .htaccess stp. Il vaudrait peut-être mieux donner ce que Patrick te demande directement ... Ca devrait aider les pros dans le domaine. Parfois, une simple lettre, ou un signe manquant et tout devient différent . Lien vers le commentaire Partager sur d’autres sites More sharing options...
Jeanluc Posté 18 Novembre 2009 Partager Posté 18 Novembre 2009 Bonjour, Quand tu dis "j'obtiens toujours un message d'erreur", ce serait utile de préciser l'erreur exacte et l'URL exacte qui a provoqué l'erreur. De toute façon: RewriteRule ^(.*).htm$ http://www.monsite.com/rep1/$1.htm [L,R] fait une redirection 302 de http://www.monsite.com/machin.htm vers http://www.monsite.com/rep1/machin.htm, suivie d'une redirection 302 de http://www.monsite.com/rep1/machin.htm vers http://www.monsite.com/rep1/rep1/machin.htm, suivie d'une redirection 302 de http://www.monsite.com/rep1/rep1/machin.htm vers http://www.monsite.com/rep1/rep1/rep1/machin.htm, ... jusqu'à ce qu'une erreur apparaisse parce que le nombre maximum de redirections a été dépassé. Jean-Luc Lien vers le commentaire Partager sur d’autres sites More sharing options...
Jeanluc Posté 18 Novembre 2009 Partager Posté 18 Novembre 2009 Tu peux essayer ceci: RewriteCond %{REQUEST_URI} !^index\.htm$ RewriteRule ^([^\/]*)\.htm$ http://www.monsite.com/rep1/$1.htm [L,R=301] Jean-Luc Lien vers le commentaire Partager sur d’autres sites More sharing options...
touta Posté 18 Novembre 2009 Auteur Partager Posté 18 Novembre 2009 Tu peux essayer ceci: RewriteCond %{REQUEST_URI} !^index\.htm$ RewriteRule ^([^\/]*)\.htm$ http://www.monsite.com/rep1/$1.htm [L,R=301] Jean-Luc Oui, en fait tu as raison, cela part en boucle avec message d'erreur. Je vais essayer ce que tu proposes...tu pourrais m'expliquer l'expression ([^\/]*) svp? Merci Touta Lien vers le commentaire Partager sur d’autres sites More sharing options...
Jeanluc Posté 18 Novembre 2009 Partager Posté 18 Novembre 2009 tu pourrais m'expliquer l'expression ([^\/]*) svp? [^\/] = n'importe quel caractère sauf un /[^\/]* = une chaîne composée de n'importe quels caractères, mais sans / Cela devrait exclure les rep1/machin.htm et donc empêcher que ça boucle. Jean-Luc Lien vers le commentaire Partager sur d’autres sites More sharing options...
touta Posté 18 Novembre 2009 Auteur Partager Posté 18 Novembre 2009 [^\/] = n'importe quel caractère sauf un / [^\/]* = une chaîne composée de n'importe quels caractères, mais sans / Cela devrait exclure les rep1/machin.htm et donc empêcher que ça boucle. Jean-Luc Ok, merci beaucoup, cela fonctionne très bien maintenant! Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant