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 :

RewriteRule pas simple


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de thierryler
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    4 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 078
    Par défaut RewriteRule pas simple
    Bonjour à tous,

    J'aurais besoin de votre aide pour écrire un RewriteRule que je n'arrive pas à écrire seul.

    Je vous explique mon besoin. Sur mon site monsite.com j'ai des fichiers power point "ppt". Et dans mes pages, j'ai des liens qui sont générés vers ces fichiers.

    Par exemple, sur la page "www.monsite.com/dossierA/dossierB/mapage.html" je vais avoir un lien vers "/a/b/monfichier.ppt".

    Et ce liens, il va être de la forme
    • soit href="/root/a/b/monfichier.ppt", qui renvoie donc vers "www.monsite.com/root/a/b/monfichier.ppt" (ajout de "/root") ;
    • soit href="redirect/a/b/monfichier.ppt", qui renvoie donc vers "www.monsite.com/dossierA/dossierB/redirect/a/b/monfichier.ppt" (ajout de "redirect").


    Dans mes dossiers, il y a toujours un truc qui prend en compte le "redirect" pour renvoyer le reste où il faut. Les deux cas fonctionnent.

    Mon problème, c'est que le script qui ajoute "/root" ou "redirect" oublie régulièrement de faire son travail. Du coup, comme les "ppt" sont toujours dans "roor", je voulais ajouter un RewriteRule qui fait le taf à la place du script.

    Je précise que je ne peux pas modifier le script.
    Je precise aussi que je connais toutes les valeurs possibles pour "dossierA" (dossierA1, dossierA2, ..., dossierA12).

    Bref, je voudrais faire un RewriteRule qui ajoute "/root" au début du chemin, mais seulement si ca fini par "ppt", et s'il n'y a pas déjà "/root" au debut ni "redirect" au milieu".

    Je voudrais donc, du coup que ça passe dans le RewriteRule direct et que ça n'aille pas plus loin dans la conf, pour ne pas être envoyé vers des workers par exemple...

    Ca me donne des migraines...

    Quelqu'un peut m'aider ?
    Merci d'avance...
    Thierry Leriche-Dessirier
    Consultant Java JEE Web Agile freelance
    Rédacteur pour Developpez
    Professeur de Génie Logiciel à l'ESIEA

    Site : http://www.icauda.com / Linked'in : http://www.linkedin.com/in/thierryler / Twitter : @ThierryLeriche

  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
    Par défaut
    Si tu attends de RewriteRule qu'il change les href dans le code HTML de tes pages, laisse tomber, mod_rewrite ne sait pas modifier le code HTML des pages.

    De mon point de vue, le problème, c'est le script qui ne marche pas parfois. Il faut corriger le problème. Une rustine, ce n'est pas souvent une bonne idée (auquel cas je propose carrément d'utiliser la rustine à la place du script qui ne marche pas.

    Donc, dans le détail, tu veux faire quoi ? Que le code HTML soit corrigé ?

  3. #3
    Rédacteur
    Avatar de thierryler
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    4 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 078
    Par défaut
    Non je veux juste une rewrite rule au niveau apache pour palier au bug évoqué.

    Si j'avais pu corriger le bug, je l'aurais fais...
    Thierry Leriche-Dessirier
    Consultant Java JEE Web Agile freelance
    Rédacteur pour Developpez
    Professeur de Génie Logiciel à l'ESIEA

    Site : http://www.icauda.com / Linked'in : http://www.linkedin.com/in/thierryler / Twitter : @ThierryLeriche

  4. #4
    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
    Par défaut
    Citation Envoyé par _Mac_ Voir le message
    Donc, dans le détail, tu veux faire quoi ? Que le code HTML soit corrigé ?
    Que veux dire dans le détail "corriger le bug" ?

  5. #5
    Rédacteur
    Avatar de thierryler
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    4 078
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 078
    Par défaut
    En fait, c'est même pire que ça. Ce que j'ai fini par découvrir, c'est que ce n'est pas un bug sur notre appli mais au niveau du proxy de la société. Donc en fait, ma règle sert à contourner le proxy... Et bien entendu, il n'est pas question de toucher à l'appli ni au proxy. Arf...

    Edit : j'ai trouvé des règles suffisantes qui semblent fonctionner.
    Thierry Leriche-Dessirier
    Consultant Java JEE Web Agile freelance
    Rédacteur pour Developpez
    Professeur de Génie Logiciel à l'ESIEA

    Site : http://www.icauda.com / Linked'in : http://www.linkedin.com/in/thierryler / Twitter : @ThierryLeriche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Assigner une fonction à une classe? Pas simple!
    Par Spidyy dans le forum Langage
    Réponses: 23
    Dernier message: 10/09/2009, 19h36
  2. Question formulaire pas simple du tout
    Par williams59 dans le forum ASP
    Réponses: 4
    Dernier message: 08/11/2007, 20h40
  3. Réponses: 5
    Dernier message: 02/12/2006, 10h59
  4. [XSL-FO] commencement... pas simple
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 03/04/2006, 09h37

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