ngweb Posté 23 Mars 2006 Partager Posté 23 Mars 2006 Bonjour, je voudrais rajouter le slash automatiquement lorsque un visiteur saisit http://www.domaine.ltd/repertoire au lieu de http://www.domaine.ltd/repertoire/ Normalement, Apache rajoute le slash automatiquement, sauf... ...si www.domaine.ltd est déjà une redirection (du genre domaine qui pointe sur un sous domaine) Quelqu'un sait faire ça ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Siddartha Posté 23 Mars 2006 Partager Posté 23 Mars 2006 Il te suffit juste de refaire une redirection supplémentaire (.htaccess ou httpd.conf) avec une règle de réecriture de style : RewriteRule /repertoire /repertoire/ Lien vers le commentaire Partager sur d’autres sites More sharing options...
Dan Posté 23 Mars 2006 Partager Posté 23 Mars 2006 C'est un peu plus compliqué que ça Cette règle fera l'affaire: RewriteEngine onRewriteCond %{REQUEST_FILENAME} -dRewriteRule ^(.+[^/])$ $1/ [R] Lien vers le commentaire Partager sur d’autres sites More sharing options...
ngweb Posté 23 Mars 2006 Auteur Partager Posté 23 Mars 2006 Merci Dan, mais ça ne fonctionne pas : car avec ta règle je me retrouve avec une url du type http://www.sousdomaine.domaineprincipal.lt...ine/repertoire/ j'ai donc modifié comme suit, avec [/] devant la variable pour être sûr de ne prendre que le dernier repertoire : RewriteEngine on RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^[/](.+[^/])$ http://www.mondomaine.ltd/$1/ [R] Même en faisant ça, je me retrouve encore avec cette url : http://www.sousdomaine.domaineprincipal.ltd/repertoire/ Pas évident ces redirections avec un multi domaine ovh !! Lien vers le commentaire Partager sur d’autres sites More sharing options...
ngweb Posté 23 Mars 2006 Auteur Partager Posté 23 Mars 2006 RewriteEngine onRewriteCond %{REQUEST_FILENAME} -d RewriteRule ^[/](.+[^/])$ http://www.mondomaine.ltd/$1/ [R] Avec RewriteBase / c'est encore plus élégant, mais toujours pas le bon résultat Lien vers le commentaire Partager sur d’autres sites More sharing options...
ngweb Posté 24 Mars 2006 Auteur Partager Posté 24 Mars 2006 La dernière mouture que j'ai essayé est celle-ci : RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^(.+[^/])$ http://www.monsite.ltd/$1/ [R] et ça marche ! (merci Dan) y a t-il un problème particulier de mettre l'url en argument ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Dan Posté 24 Mars 2006 Partager Posté 24 Mars 2006 Désolé, j'avais oublié le RewriteBase, et surtout j'avais réfléchi en terme de serveur dédié, et non de mutualisé OVH. Ces derniers ont des règles particulières en matière de réécriture. Tu peux essayer en rajoutant simplement un / devant le $1 de ma règle Lien vers le commentaire Partager sur d’autres sites More sharing options...
ngweb Posté 24 Mars 2006 Auteur Partager Posté 24 Mars 2006 ça marche en effet, bravo, mais écrire l'url, bien que moins élégant, permet de récupérer aussi le cas où il manquerait les www. jamais content Lien vers le commentaire Partager sur d’autres sites More sharing options...
Dan Posté 24 Mars 2006 Partager Posté 24 Mars 2006 De toutes manières, le fait de mettre le flag [R] forcera une réécriture externe, donc mod_rewrite rajoutera de lui-même le http://... Mais ça ne gêne pas de le préciser toii-même Dan 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