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 :

[mod_proxy] Cacher une partie de l'URL


Sujet :

Apache

  1. #1
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut [mod_proxy] Cacher une partie de l'URL
    Bonjour,
    je suis nouveausur le forum et novice dans la configuration d'apache en ce qui concerne les régles de redirection. voici mon problème :
    j'ai un vhost qui est hébergé sur un serveur web et j'ai un reverse proxy, on accède mon vhost à travers le reverse proxy. tout fonctionne parfaitement, cela dit, j'aimerai savoir si c'est possible de cacher une partie de l'url. c'est à dire, quand je tape https://proxy:port/fichier.html je souhaite accèder à https://proxy:port/repertoire/fichier.html

    vous l'avez compris, je souhaite cacher le nom répertoire, est ce que c'est possible et pouvez vous m'aider là dessus s'il vous plait. merci à vous tous 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
    Par défaut
    A priori c'est faisable par configuration du reverse proxy : c'est quoi ton reverse proxy ? Apache ? Autre ?

  3. #3
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    c'est un reverse proxy apache version 2.0

  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
    Dans ce cas, il faut modifier les ProxyPass et ProxyPassReverse pour ajouter le chemin :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ProxyPass / http://xxx/repertoire/
    ProxyPassReverse / http://xxx/repertoire/

  5. #5
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    voilà ce que j'ai noté comme régle dans mon reverse proxy :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteRule ^/(.*) http://serveurapache:port/$1 [proxy]
    ProxyPass / http://serveurapache/rep
    ProxyPassReverse / http://serveurapache/rep
    et cela ne me fait rien

  6. #6
    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
    C'est quoi ce RewriteRule ? Il sert à quoi ?

  7. #7
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    il permet de rediriger toutes les requetes effectué sur le proxy vers le serveur web hébergeant le vhost

    redirige tout ce qui est http://proxy:port/page*.* vers http://serveurapache:portdifférent/page*.*

  8. #8
    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
    Ben c'est un peu le but aussi de ProxyPass Généralement, on ne met que ProxyPass ; on passe par un RewriteRule pour les cas particulier, comme utiliser une expression régulière, mais pour les URL simples, ProxyPass et ProxyPassReverse suffisent. Donc commente ton RewriteRule et vois ce que ça donne.

  9. #9
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    désolé pour le retard, j'étais pas au travail, sinon je viens d'essayer ce matin avec uniquement les ProxyPass et ProxyPassReverse et cela ne fonctionne pas. j'ai un ami qui m'a dit qu'il faut peut être passer par les htdocs, j'essaie de creuser de ce côté pour voir. Merci

  10. #10
    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
    Ce n'est pas normal.

    Citation Envoyé par linuxman Voir le message
    et cela ne fonctionne pas.
    Un peu plus de détails, peut-être ? Une erreur 404 ? Une erreur 500 ? Quelque chose dans les logs d'Apache ?

    Est-ce que http://serveurapache/rep est bien l'URL finale du vhost ?

  11. #11
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    j'ai une erreur 404.
    j'ai trouvé autre chose
    en faisant la commande suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Alias /toto             /siteweb/rep
    j'arrive à accèder aux pages du répertoire rep à partir de toto
    http://siteweb/toto/page*.html fonctionnent bien

    quand je mets
    j'arrives pas à y accéder j'ai une erreur 404.
    un ami me dit qu'il faut jouer sur les options d'indexation, j'essaie de voir comment faire.

  12. #12
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    en fait, quand je fais un alias sur la racine du répertoire, j'arrive plus à voir aucune page html et j'ai un index de mes fichiers qui se trouvent dans le répertoire rep seulement, et quand je clique sur n'importe quel page il me sort une erreur 404
    j'ai l'impression que l'alias écrase le contenu du répertoire racine et du coup apache ne sait plus comment se rediriger.

  13. #13
    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
    Je ne comprends pas ce que tu veux faire, désolé. Pourquoi ne pas changer tout simplement la valeur de la directive DocumentRoot pour pointer sur /siteweb/rep ? Ca serait 1000 fois plus simple.

  14. #14
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    si cela ne dépendait que de mois, j'aurais tout mis dans un même répertoire et je ne me serais pas casé la tête et fait chier le monde, mais c'est ce qu'on me demande de faire au travail et je ne suis pas sur que c'est réalisable car, un alias c'est une sorte de raccourcci mais il n'empêche pas l'accès au répertoire que je veux masquer. et si je bloque l'accès au répertoire que je veux masquer, mon alias ne fonctionnera pas, ce qui voudrait dire que l'alias n'est pas la solution à ce problème. les rewriterule permettent de rediriger des pages html vers d'autres mais pas de masquer. y a t -il une solution à ce problème? telle est la question

  15. #15
    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
    Je suis vraiment désolé mais je ne comprends pas ce que tu cherches à faire : au départ, tu parlais de reverse proxy et maintenant d'alias. Peux-tu redéfinir le problème et donner des exemples (proxy/pas proxy, URL vues par le navigateur et qui doivent pointer là ou là, etc.), s'il te plaît ?

    Pour info, les RewriteRule permettent dans certains cas de masquer les répertoires : il suffit de ne pas faire de redirection client et d'avoir les bons liens dans les pages. Si tu détailles ton besoin en donnant des exemples, on devrait pouvoir t'aider.

  16. #16
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    et bien disons que j'ai un serveur web sur lequel j'ai un site web et qui accessible via http://toto:8000
    ce site web comprend des sous répertoirespar exemple, il contient un sous répertoire toto qui contient une page toto.html, du coup on la visualise en utilisant le lien http://toto:8000/toto/toto.html

    ce site est accessible en réseau privé interne. j'ai un reverse proxy qui lui est accessible via l'extérieur(internet) et qui pointe sur le serveur web interne qui héberge notamment http://toto:8000/toto/toto.html

    les utilisateurs accédent au serveur web via le reverse proxy http://tata:9000/
    en tapant http://tata:9000 les gens accèdent à http://toto:8000/
    et en tapant http://tata:9000/toto/toto.html les gens accédent à http://toto:8000/toto/toto.html

    je souhaite accéder à toto.html en tapant http://tata:9000/toto.html sans passer par le répertoire toto, j'aimerai cacher ce répertoire voir interdir l'indexation de ce répertoire. je ne sais pas si j'ai été clair ou pas cette fois-ci

  17. #17
    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
    Oui, c'est bien plus clair. Mais du coup, j'en reviens à la première conf que j'ai suggérée : dans le VH ou la conf du reverse proxy, tu mets simplement ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ProxyPass / http://toto:8000/toto/
    ProxyPassReverse / http://toto:8000/toto/
    Pas de RewriteRule, Alias ou autre chose. Mais tu disais que ça ne marche pas, et là je suis perdu, je l'avoue Je vais voir si j'ai une idée pour comprendre d'où peut venir le problème s'il persiste.

    Quand tu parles d'interdire l'indexation, tu parles d'indexation par un moteur de recherche ou l'affichage par défaut du contenu d'un répertoire quand il n'y a pas de page index.xxx dans ce répertoire ?

  18. #18
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    Merci _Mac_ pour ta réponse, en fait c'était moi qui avait mal écrit les régles de proxypass, je n'avais pas mis le / à la fin du répertoire toto, je l'ai réjouté pour les deux régles et cela fonctionne bien.
    par contre j'arrive sur une page qui m'index tout le contenu de mon répertoire toto et je n'ai pas l'affichage de ma première page index.html bien que je l'ai mentionné sur le serveur web et sur le proxy avec la commande

    DirectoryIndex index.html

    est ce que tu aurais une idée. Merci encore

  19. #19
    Membre averti
    Inscrit en
    Novembre 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 50
    Par défaut
    en fait c'est bon je viens de déplacer le fichier index.html dans le répertoire toto et cela fonctionne bien. merci beaucoup Mac pour ton aide, c'est vraiment très gentil et sympa de ta part

  20. #20
    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 linuxman Voir le message
    je n'avais pas mis le / à la fin du répertoire toto
    En relisant le post ce matin, j'avais remarqué, mais je ne pensais pas que ça pouvait être ça

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

Discussions similaires

  1. cacher une partie d'url
    Par rgdu86 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/03/2008, 09h54
  2. Cacher une partie de l'URL
    Par randriamanana dans le forum ASP.NET
    Réponses: 11
    Dernier message: 10/01/2008, 15h48
  3. Masquer une partie de l'URL sur le navigateur
    Par kayser dans le forum ASP
    Réponses: 5
    Dernier message: 11/04/2006, 14h30
  4. Afficher/Cacher une partie d'une page
    Par frechy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 12/01/2006, 14h18
  5. Afficher / Cacher une partie d'un formulaire
    Par damjal dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 17/10/2005, 18h10

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