Humm il semblerait que j'avance ...
Le problème ne viendrais pas de l'url rewriting (ou plutot si) mais plus particulièrement de ma méthode d'inclusion des paramètres.
En fait, j'utilise ce script pour insérer du contenu au sein d'une "page type".
Ainsi, j'ai ce code (page.php) :
1 2 3 4 5 6 7 8
|
require("api/config.php");
echo "test";
if (isset($_GET['page'])){
include(htmlentities($_GET['page']).".php");
}
else
include("accueil.php"); |
En utilisant ces règles :
1 2 3 4 5
| RewriteEngine on
RewriteBase /~user/test
RewriteRule ^accueil$ page.php?page=accueil [L]
RewriteRule ^(.*)/(.*)$ page.php?page=$1&id=$2 [L] |
Quand je tape : http://localhost/~user/test/accueil, il "zappe" page.php et accède directement à accueil.php. Du coup, mon include ne sert à rien.
En revanche, quand je tape http://localhost/~user/test/rubrique/1, il écrit bien le message "test" suivi de l'erreur :
Warning: include(redirect:/~user/test/page.php.php) [function.include]: failed to open stream: No such file or directory in /home/squaredge/public_html/test/page.php on line 9
L'erreur d'include est logique mais du coup j'ai de gros doute sur l'utilisation de ma page.php ... Quelqu'un aurait une idée pour réaliser cela proprement ?
Merci.
Partager