Rediriger la racine vers une langue par défaut

WRInaute discret
Bonjour,

Je n'arrive pas après avoir testé une dizaine de lignes trouvés à gauche à droite, de rediriger toutes les urls sans langue dans l'url vers la version par défaut (/en/ dans mon cas).
Exemple :
http://www.ndd.com ---> http://www.ndd.com/en
http://www.ndd.com/blabla/test ---> http://www.ndd.com/en/blabla/test

Voici mon code actuel : (Qui contient déjà 2 règles, la redirection vers www. si absent, et le retrait du / de fin si présent).

Code:
<IfModule mod_rewrite.c>
	Options +FollowSymLinks
	RewriteEngine On
</IfModule>

// mes 2 règles qui fonctionnent cités plus haut
RewriteCond %{HTTP_HOST} ^ndd.com$
RewriteRule ^(.*)   http://www.ndd.com/$1  [QSA,L,R=301]
RewriteRule ^(.+)/$ http://www.ndd.com/$1 [R=301,L]

// Code pour faire fonctionner mon framework, donc à pas toucher :-)
<IfModule mod_rewrite.c>
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

Je vous remercie par avance, à celui ou celle qui me résout mon problème :)
 
Nouveau WRInaute
Salut,
j'utilise qqch de ce genre sur divers sites:
Dans le .htaccess
Code:
RewriteRule   ^fr\/$               /index.php?p=accueil&langue=fr [N]
RewriteRule   ^([\w]+)\/(.*)\/$    /index.php?p=$2&langue=$1 [L]

D'autre part, dans mon template:
Code:
define("WEBROOT", '/');
// Langue par défaut=fr
if(!isset($_GET['langue'])){
   echo "<script language='javascript' type='text/javascript'>";
      echo "window.location.replace('" . WEBROOT . "fr/');";
   echo "</script>";
}

Et mes lient ressemblent à ça:
Code:
<a href="<?php echo WEBROOT . $langue . "/"?>ma_page/">mon lien</a>

J'espère que ça t'aidera.
 
Discussions similaires
Haut