|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre régulier
![]() Inscription : février 2009 Messages : 197 ![]() |
Bonjour,
j'essai de réaliser une redirection d'url, le chemin réel est index.php?mn=3, et souhaiterai qu'elle devienne /accueil/ sachant que ce dossier n'existe pas, il s'agit du nom de la redirection souhaité Le problème rencontré c'est que si le fichier .htaccess est vide, le site fonctionne, si je le complète avec le code ci-dessous, ça déclenche une erreur 500..., je suis en localhost. http://localhost/project.com/index.php?mn=3 Code :
|
||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : août 2005 Messages : 8 278 ![]() |
Est-ce que mod_rewrite est activé dans Apache ? Je n'ai pas l'impression.
Sinon, le réflexe de base est d'aller consulter le fichier error_log d'Apache dès qu'une erreur 500 est rencontrée. On y apprend souvent beaucoup de choses.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#3 |
|
Membre régulier
![]() Inscription : février 2009 Messages : 197 ![]() |
effectivement il était désactivé, mais le code ne donne rien qq même
|
|
|
00
|
|
|
#4 | ||
![]() ![]() Inscription : août 2005 Messages : 8 278 ![]() |
C'est normal car le filtre de RewriteRule ne joue que sur la partie chemin de l'URL sans le / frontal. Pour reprendre ton exemple, la partie chemin de http://localhost/project.com/index.php?mn=3 est /index.php, donc Apache va essayer de filtrer "index.php" (en retirant le / frontal) sur un filtre qui est "^index.php?mn=3$" et qui signifie "index.phmn=3$" ou "index.phpmn=3".
Pour exploiter la query string avec mod_rewrite, il faut utiliser RewriteCond. Dans ton cas, ça donne ceci : Code :
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
||
|
|
00
|
|
|
#5 | ||
|
Membre régulier
![]() Inscription : février 2009 Messages : 197 ![]() |
Merci pour ces explications, je ne suis pas expert dans les url rewriting...
Après test le message suivant aparait (error 404) Code :
|
||
|
|
00
|
|
|
#6 | |
![]() ![]() Inscription : août 2005 Messages : 8 278 ![]() |
Citation:
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
|
00
|
|
|
#7 |
|
Membre régulier
![]() Inscription : février 2009 Messages : 197 ![]() |
Merci pour le temp que tu prends à m'aider,
je cherche en fait à réécrire une url en la transformant en dossier virtuel sans que ce dossier existe vraiment, Exemple: url d'origne => ...domaine.com/index.php?mn=3&lang=fr url réécrite => ...domaine.com/voitures/ |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Eric GaridacciInscription : septembre 2005 Messages : 1 057 ![]() |
Salut,
Essaie comme ceci Code :
RewriteRule ^voitures/$ index.php?mn=3 [L]
__________________
N'oubliez pas le vote des messages utiles ainsi que le Tag [Résolu].Mon Site Web : Corse - Actualité, Météo, Vidéos, Logiciels, ... |
|
|
00
|
|
|
#9 |
|
Membre régulier
![]() Inscription : février 2009 Messages : 197 ![]() |
Merci ça fonctionne, faut juste penser à ajouter "../" dans le chemin du css et images.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com