URL rewriting: Résoudre le problème de variables $_GET vides chez OVH

Tutoriaux > PHP / MySQL > URL rewriting: Résoudre le problème de variables $_GET vides chez OVH

URL rewriting: Résoudre le problème de variables $_GET vides chez OVH
Lorsque vous utilisez un fichier .htaccess pour faire de l'URL rewriting chez OVH, vous pouvez tomber sur un souci: les variables $_GET sont toujours vides après le rewriting. Voici la solution.

$_GET vide

Prenons un exemple très simple de URL rewriting. Pour suivre ce tutoriel, vous devez déjà avoir quelques connaissances en rewriting et avoir un souci chez OVHClin d'oeil

Voici le fichier .htaccess que nous utiliserons:

#----------INSCRIPTION
RewriteRule ^toto$ /toto.php [L]
RewriteRule ^toto/([a-z]+)$ /toto.php?mode=$1 [L]


Mais problème lorsque vous appelez toto/aidoweb


En effet, la page toto.php contient un $_GET['mode'] vide. Vous avez beau tout essayer, cela fonctionne en local mais pas sur OVH.

La solution

La solution est tellement simple qu'elle en paraît frustrante pour ceux qui ont cherché longtemps. OVH active l'option Multiviews par défaut. Mais qu'est-ce que Multiviews?

Citation

Voici comment fonctionne MultiViews : supposons qu'un serveur reçoive une requête pour /some/dir/foo, que l'option MultiViews soit activée pour /some/dir, et que le fichier /some/dir/foo n'existe pas ; alors le serveur cherche les fichiers nommés foo.* dans le répertoire /some/dir, et construit une table de types à partir de ces noms de fichiers. Dans la table, chaque fichier se voit assigner les types de médias et les encodages de contenu tels qu'ils seraient envoyés si le client les demandait par leur nom propre. Apache choisit alors la meilleure représentation à envoyer au client, en fonction de ses préférences.


En bref, vos $_GET passent à la trappe. La solution est donc simplement de désactiver l'option Multiviews via le htaccess comme suit:

Options -MultiViews



Hello

Par Pouzy , Le 08 Février 2012 à 19h55
Ce tutoriel est la propriété d'Aidoweb et ne peut en aucun cas être copié.

Retour à PHP / MySQL

Ajouter un commentaire

Suite a un fort volume de spam, les commentaires d'invités sont pour le moment désactivés. Vous devez vous inscrire ou vous identifier pour pouvoir commenter cet article, ou demander du support.

Commentaires sur cet article

Aucun commentaire pour le moment.

Tutoriaux > PHP / MySQL > URL rewriting: Résoudre le problème de variables $_GET vides chez OVH