Url rewriting - Règle de redirection générale

Résolu
DamsWD Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   -  
DamsWD Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Actuellement en cours de réalisation d'un site internet, pouvez-vous m'aider à trouver la solution suivante sur les URL REWRITING :

Je souhaiteras effectuer une règle de redirection pour l'ensemble des liens.

Par exemple, rediriger "/home" vers "/index.php/home", plus générallement, "/*" vers "/index.php/*".

En programmation, quelque chose comme cela :
<IfModule mod_rewrite.c>
	RewriteEngine on
	RewriteRule *  /index.php/* [L] 
</IfModule>


Merci de votre aide.

2 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Salut,

    Il faut utiliser les parenthèses capturantes.

    <IfModule mod_rewrite.c>
    	RewriteEngine on
    	RewriteRule ^(.*)$  /index.php/$1 [L] 
    </IfModule>

    ^ signifie "depuis le début"
    $ signifie "jusqu'à la fin"
    Donc on récupère l'entièreté du chemin
    . signifie "tous les caractères" et
    * signifie "0 fois, 1 fois, ou plus"
    $1 correspond à la valeur capturée par la première parenthèse.
    1
  2. DamsWD Messages postés 36 Date d'inscription   Statut Membre Dernière intervention  
     
    Effectivement, cette solution parfaitement.

    Comme à mes habitudes, je cherche trop compliqué ! :-)

    Merci en tout cas.

    Bonne soirée.
    0