Bonjour à tous.
Je viens ici pour tenter de trouver une réponse à un petit soucis dont j'ai du mal à me débarasser.
Je viens de créer dans un .htaccess une petite série de règles de rewriting. Voici mon fichier :
En gros, je cherche à rediriger toutes les pages vers index.php qui contient un appel à mon moteur de site pour générer le rendu. Le comportement final est bien celui auquel je m'attend.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 # Enable the rewriting engine RewriteEngine on # Conditions RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.css)$ RewriteCond %{REQUEST_URI} !(.js)$ # Rewrite all requests to our index.php (engine) RewriteRule ^(.*)$ index.php [L]
Exemple:
Si je me rend aux adresses 'site.com/', 'site.com/go', 'site.com/go/Acceuil', les URLs restent tels quelles dans le navigateur et je suis bien redirigé dans mon code sur la page /index.php.
Le problème vient lors des inclusions de fichier .css, .js, etc ... Si j'essaye d'inclure '/images/test.css'. Dans le cas de :
- 'site.com' => Ok ! L'inclusion se fait bien.
- 'site.com/go' = > Ok ! L'inclusion se fait bien.
- 'site.com/go/Acceuil' = > L'inclusion ne se fait pas.
- Si je monte en hierarchie ça ne marche pas non plus.
Est ce que quelqu'un à une solution à me proposer ? Est-il possible de forcer ses inclusions depuis la racine ? Je suppose qu'il est possible de gérer cela coté Apache sans devoir gérer sa dans mon code.
Merci pour votre aide
Partager