IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Rewriting d'url dans htaccess


Sujet :

Apache

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    525
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 525
    Points : 212
    Points
    212
    Par défaut Rewriting d'url dans htaccess
    Bonjour,

    Dans un sous repertoire /sond de mon site, je voudrais developper un module php qui renvoie une image.
    L'appel se ferait par "http://www.monsite/sond/test.gif"
    Jusque là rien de particulier, sauf quand j'essaie de rediger la réecriture d'url ...
    Voici mon htaccess dans le sous repertoire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Options +FollowSymlinks
    RewriteEngine on
    RewriteOptions inherit
    RewriteCond %{REQUEST_URI} test\.gif$
    RewriteRule ^(.*)\.gif$ $1.php [L]
    La condition ne fonctionne pas et dans tous les cas (/test.php ou /test.gif) le résultat est le même !
    Je voudrais que l'appel se fasse uniquement par /test.gif et que toutes les autres url soient redirigées

    Si quelqu"un pouvait m'aider ...
    Merci d'avance

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Citation Envoyé par dede92 Voir le message
    La condition ne fonctionne pas et dans tous les cas (/test.php ou /test.gif) le résultat est le même !
    C'est-à-dire ? Quel est ce résultat ? Erreur 404 ? Erreur 500 ?

    Citation Envoyé par dede92 Voir le message
    Je voudrais que l'appel se fasse uniquement par /test.gif et que toutes les autres url soient redirigées
    Redirigées vers quoi ?

    Bref, avec un .htaccess comme ceci placé dans le répertoire sond, appeler /sond/test.gif va appeler /sond/test.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteEngine on
    RewriteRule ^test\.gif$ test.php [L]

    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

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    525
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 525
    Points : 212
    Points
    212
    Par défaut
    Citation Envoyé par _Mac_ Voir le message
    C'est-à-dire ? Quel est ce résultat ? Erreur 404 ? Erreur 500 ?


    Redirigées vers quoi ?

    Bref, avec un .htaccess comme ceci placé dans le répertoire sond, appeler /sond/test.gif va appeler /sond/test.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RewriteEngine on
    RewriteRule ^test\.gif$ test.php [L]
    Bonjour,

    Quand le disais "le résultat est le même", c'etait pour dire que la réecriture se faisait dans tous les cas, que l'on appelle test.gif ou test.php, même avec le RewriteCond alors que dans l'un des deux cas, je m'attendais a une erreur
    J'ai modifié mes 2 fichiers comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Options +FollowSymlinks
    RewriteEngine on
    RewriteOptions inherit
    RewriteRule ^(.*)\.gif$ $1.php [L]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?
    list($fill, $ext) = explode(".", $_SERVER['REQUEST_URI']);
    if ($ext != "gif")
      header("Location: /sommaire.htm");
    //
    echo"<br>REQUEST_URI : ".$_SERVER['REQUEST_URI'];
    /*.....
    ..............
    affichage de l'image .............
     
    ........................*/
    ?>

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/06/2012, 09h06
  2. URL Rewriting dans htaccess
    Par zibizibi2 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 04/11/2010, 17h41
  3. modification d'url dans htaccess
    Par bractar dans le forum Apache
    Réponses: 8
    Dernier message: 05/12/2008, 22h42
  4. url rewriting dans htaccess
    Par dl_jarod dans le forum Apache
    Réponses: 1
    Dernier message: 04/11/2008, 17h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo