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

Serveurs (Apache, IIS,...) Discussion :

Faire cohabiter IIS et Apache sur deux ports de manière transparente pour l'utilisateur


Sujet :

Serveurs (Apache, IIS,...)

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 68
    Points : 52
    Points
    52
    Par défaut Faire cohabiter IIS et Apache sur deux ports de manière transparente pour l'utilisateur
    Bonjour,

    J'ai lu attentivement certains topics intéressants sur ce forum mais je me pose quand même certaines question.

    J'ai une machine en locale accessible sur machine.domaine.fr
    sur cette machine il y a IIS qui tourne sur le 80 et apache sur le 81

    pour accéder aux applications sur apache, il est logique de faire:
    http://machine.domaine.fr:81

    Je souhaiterais que les utilisateurs s'affranchissent du port pour pouvoir accéder à l'application sur apache via http://machine.domaine.fr

    J'ai fait des tests à part, sur une machine qu'avec apache sur le port 81.
    A l'aide de ce lien:
    http://www.paperblog.fr/838813/redir...t-avec-apache/
    et ça fonctionne!
    Oui mais aucun service ne tourne sur le port 80, et apache peut donc l'écouter sans soucis.

    Maintenant, je doute qu'avec IIS qui écoute déjà le port 80, apache puisse lui aussi écouter ce port....

    Ma question est donc, comment faire en sorte de pouvoir accéder aux applications sur apache qui se trouve sur le port 81, sans avoir a spécifier :81 à la fin??

    J'en profite aussi pour poser une question relative à ce topic:
    http://www.developpez.net/forums/d60...n-suivant-nom/

    il est ecrit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
     Listen 80
    Listen 8080
    
    NameVirtualHost 172.20.30.40:80
    NameVirtualHost 172.20.30.40:8080
    
    <VirtualHost 172.20.30.40:80>
    ServerName www.example1.com
    DocumentRoot /www/domain-80
    </VirtualHost>
    
    <VirtualHost 172.20.30.40:8080>
    ServerName www.example2.com
    DocumentRoot /www/domain-8080
    </VirtualHost>
    quand on ecrit domain-8080 il s'agit du nom du répertoire de l'application qu'on veut exécuter sur le port 8080, ou on écrit vraiment domain-8080 ? ma question est surement conne, mais j'ai un doute, donc j'assume..

    Par avance merci

  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
    Tu ne peux effectivement pas avoir IIS et Apache qui écoutent tous les 2 sur le même port 80. Il faut donc choisir un programme qui écoutera sur le port 80 et qui renverra certaines requêtes sur l'autre programme qui écoutera sur un autre port.

    Ce que tu veux faire est parfaitement réalisable mais à la seule condition qu'on puisse faire la différence entre ce qui tourne sur IIS et sur Apache en regardant l'URL. Par exemple, si tu dis que l'URL la plus simple http://machine.domaine.fr/ doit mener tantôt sur Apache, tantôt sur IIS, ce n'est pas possible : comment implémenter ce "tantôt" dans le serveur qui écoute sur le port 80 ? Comment ce serveur qui écoute sur le port 80 sait quoi faire (servir lui-même la page ou la renvoyer à l'autre serveur) ? Il faut nécessairement un discriminant dans l'URL qui sert à dire "ça c'est pour Apache, ça c'est pour IIS". Donc, première question : sais-tu répondre à cette question ? Par exemple, peut-on dire "tout ce qui commence par /ABC (http://machine.domaine.fr/ABC/...) est pour IIS, tout le reste est pour Apache" (ou l'inverse) ?

    Citation Envoyé par gostbuster Voir le message
    quand on ecrit domain-8080 il s'agit du nom du répertoire de l'application qu'on veut exécuter sur le port 8080, ou on écrit vraiment domain-8080 ?
    DocumentRoot indique le répertoire où se trouvent les fichiers du site, donc oui, il s'agit d'un répertoire, et tu mets le nom que tu veux : /www/titi, /www/toto ou /www/domain-8080 si ça te fait plaisir. Aucune incidence du nom sur le fonctionnement d'Apache, pas de convention de nommage ou quoi que ce soit du genre.

    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 du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 68
    Points : 52
    Points
    52
    Par défaut
    Bonjour MAC et merci pour ton aide,
    Avec toutes les réponses que tu apportes aux membres, tu dois être sacrément un expert, donc bravo !

    Ta réponse m'éclaire beaucoup, et confirme ce que je pensais.

    Si c'est apache qui écoute le port 80, alors oui, je saurais dire a apache "tu dois rediriger cette requete sur un port utilisé par IIS (et donc c'est IIS qui prendra la relève).
    Par contre si c'est IIS, bien que ce soit possible, je ne connais pas assez bien ce serveur.

    Enfin, j'imagine donc que si j'ai:
    http://appApache.domaine.fr
    http://appIIS.domaine.fr
    avec apache sur 81 IIS sur 80 et enfin
    appApache et appIIS qui pointent sur la même IP
    il est possible de faire la différenciation et par conséquent rediriger vers la bonne application sur le bon port....

    En tout cas merci encore pour cette réponse.

  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
    Points : 12 977
    Points
    12 977
    Par défaut
    Moi non plus, je ne saurai pas faire si IIS écoute sur le port 80.

    Donc, si j'ai bien compris, il faut :
    • Configurer IIS pour écouter sur le port 81
    • Configurer Apache pour écouter sur le port 80
    • Configurer les DNS pour que les 2 noms pointent sur l'IP d'Apache (ou équivalent)
    • Configurer deux virtual hosts dans Apache, un pour l'appli servie par Apache et l'autre qui renvoie sur IIS :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      NameVirtualHost *:80
      
      # VH pour Apache
      <VirtualHost *:80>
          ServerName appApache.domaine.fr:80
          # Tu reprends ici la conf actuelle d'Apache pour le document root, les logs, etc.
          DocumentRoot /...
          ...
      </VirtualHost>
      
      <VirtualHost *:80>
          ServerName appIIS.domaine.fr:80
          ProxyPass / http://machine.domaine.fr:81/
          ProxyPassReverse / http://machine.domaine.fr:81/
      </VirtualHost>

    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

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 68
    Points : 52
    Points
    52
    Par défaut
    merci pour ces réponses, le topic est donc résolu.

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

Discussions similaires

  1. IIS et Apache sur le même serveur : comment cacher le port 8080 ?
    Par barbuvb dans le forum Serveurs (Apache, IIS,...)
    Réponses: 1
    Dernier message: 28/06/2010, 01h21
  2. Installation IIS et APACHE sur deux cartes réseaux
    Par bannik dans le forum Serveurs (Apache, IIS,...)
    Réponses: 10
    Dernier message: 18/04/2008, 09h16
  3. [services] IIS et Apache sur le meme port
    Par Valentino62100 dans le forum IIS
    Réponses: 2
    Dernier message: 18/04/2007, 09h44
  4. [services] IIS et Apache sur le meme port
    Par slim dans le forum Windows Vista
    Réponses: 2
    Dernier message: 25/02/2007, 14h33
  5. Faire cohabiter ASP et PHP sur une même DB
    Par freud dans le forum Général Conception Web
    Réponses: 12
    Dernier message: 12/10/2005, 17h42

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