Je le fichier .htaccess suivanthtaccess rewrite passe toujours nom au lieu d'URL réelle
RewriteEngine on
RewriteRule ^(.*)/?$ index.php?file=$1 [L]
donc j'attendre à transmettre mysite.com/foobar à mysite.com/index.php?file=foobar
J'ai le fichier index.php suivant
<?php
var_dump($_GET);
?>
peu importe l'URL que j'appelle (mysite.com, mysite.com/foobar, mysite.com/test), la sortie de index.php est toujours
array(1) { ["file"]=> string(9) "index.php" }
alors que j'attends un
array(1) { ["file"]=> string(0) "" }
array(1) { ["file"]=> string(6) "foobar" }
array(1) { ["file"]=> string(4) "test" }
$ _SERVER [ 'QUERY_STRING'] retourne également "file = index.php"
Je ne pense pas que tout autre fichier htaccess sont impliqués, lorsque J'écris des caractères aléatoires dans le fichier .htaccess Je reçois une erreur interne du serveur (comme prévu) et si je change le nom du paramètre "fichier" ou change le nom du fichier "index.php" en "test.php" le le problème reste le même (affichant test.php au lieu de index.php)
Ce code affiche array (0) {} lorsque j'appelle mysite.com ou mysite.com/index.php, mais renvoie 404 non trouvé pour les appels comme mysite .com/foobar – SackZement
a corrigé les fautes de frappe, va corriger le formatage maintenant. – Erik
La première règle entraîne toujours la même erreur 404, mais la seconde fonctionne très bien pour mon but. Merci. – SackZement