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 :

Diriger un sous-répertoire du domaine vers un autre serveur


Sujet :

Apache

  1. #1
    Membre actif
    Avatar de CEDRIC_D
    Homme Profil pro
    Développeur IA Python C# Angular
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur IA Python C# Angular
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Points : 231
    Points
    231
    Par défaut Diriger un sous-répertoire du domaine vers un autre serveur
    Bonjour,

    L'URL de mon domaine "mondomaine.com" est configuré sur un serveur Apache avec une IP publique par exemple "111.111.111.111"
    J'aimerais que le sous-répertoire "/piwik" de ce domaine soit dirigé vers un autre serveur donc vers une autre IP publique, par exemple "222.222.222.222"
    * http://mondomaine est hébergé sur "111.111.111.111"
    * http://mondomaine/piwik est hébergé sur "222.222.222.222"
    J'arrive tré facilement a le faire avec des sous domaine, par exemple piwik.mondomaine.com mais pas avec des sous-répertoires.

    Pourquoi faire cela : mon certificat SSL n'est valable que pour mon domaine (si je redirige vers un sous-domaine j'ai d'autres problèmes)
    Pourquoi ne pas installer Piwik sur le même serveur : le serveur principal est déjà surchargé car plusieurs environnements tournent pour ce domaine :
    * le serveur principal est configuré comme serveur d'application JEE (Glassfish), il y a également Alfresco ...
    En fait je cherche a isoler le backoffice sur une autre machine

    Merci pour vos conseils

    Cédric
    Cédric Dromzée - Développeur IA https://dromzee.fr

  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
    Il faut faire du reverse proxy. Mais du coup, ça ne soulagera pas totalement ton premier serveur Web car il continuera à recevoir (mais sans les traiter vraiment) toutes les requêtes vers /piwik. Dans ton httpd.conf :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ProxyPass /piwik http://222.222.222.222
    ProxyPassReverse /piwik http://222.222.222.222

    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
    Avatar de CEDRIC_D
    Homme Profil pro
    Développeur IA Python C# Angular
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur IA Python C# Angular
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Points : 231
    Points
    231
    Par défaut Diriger un sous-répertoire du domaine vers un autre serveur
    Merci pour ta réponse Mac,

    J'ai configuré le mod_proxy d'Apache comme indiqué.

    J'ai eu quelques problèmes !

    Problème 1 : Nous étions redirigé à la racine du site par défaut (donc pas dans le bon répertoire) du deuxième serveur (destinataire de la redirection).
    Il héberge lui même plusieurs sites.

    Solution
    ajouter la directive : Elle permet d'envoyer l'entête de l'URL au 2ème serveur qui lui pourra résoudre le chemin.

    Problème 2 : SSL
    Je redirige un sous répertoire https://mondomaine/wiki/ sur le deuxième serveur mais seul le texte de la page s'affichait.
    Solution : il faut modifier le fichier LocalSettings.php
    Bien préciser https dans l'URL du serveur $wgServer = "https://www.mondomaine.com";
    Sinon une partie des sources (Css ...) passe par le protocole http

    Problème 3 : redirection (mod_proxy) SSL totale
    Actuellement, en SSL c'est le serveur proxy qui résout le SSL et transmet ensuite au deuxième serveur.
    Mais j’aimerais rediriger tout le trafic jusqu'au deuxième serveur pour que ce soit lui qui prenne en charge le SSL.
    J'ai pas encore la solution mais je la posterais

    Merci
    Cédric Dromzée - Développeur IA https://dromzee.fr

  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
    Citation Envoyé par CEDRIC_D Voir le message
    Problème 3 : redirection (mod_proxy) SSL totale
    Actuellement, en SSL c'est le serveur proxy qui résout le SSL et transmet ensuite au deuxième serveur.
    Mais j’aimerais rediriger tout le trafic jusqu'au deuxième serveur pour que ce soit lui qui prenne en charge le SSL.
    Avec un reverse proxy, c'est très compliqué car tu as nécessairement une rupture, comme tu l'indiques. Il y a une possibilité si le SSL ne sert pas à l'authentification. Dans ce cas, tu n'as pas nécessité à pousser jusqu'au bout le certificat du client. Tu peux alors configurer Apache pour se connecter en SSL au serveur de backend mais je ne sais plus si c'est possible et comment faire (je crois que c'est possible mais qu'à partir d'une certaine version).

    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 actif
    Avatar de CEDRIC_D
    Homme Profil pro
    Développeur IA Python C# Angular
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur IA Python C# Angular
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Points : 231
    Points
    231
    Par défaut Proxy SSL
    Finalement j'ai réussi a configurer le proxy en SSL et surtout a diriger vers différents serveurs selon le sous-répertoire du site :

    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
    18
    19
    20
    ServerName mondomain.com
    ServerAlias www.mondomaine.com
    SSLProxyEngine On
    RequestHeader set Front-End-Https "On"
    ProxyPreserveHost on
    ProxyRequests off
    ProxyPass /piwik/ https://IPduserveur1/piwik/
    ProxyPassReverse /piwik/ https://IPduserveur1/piwik/
    ProxyPass /roundcube/ https://IPserveur2/roundcube/
    ProxyPassReverse /roundcube/ https://IPserveur2/roundcube/
    ProxyPass /wiki/ https://IPServeur3/wiki/
    ProxyPassReverse /wiki/ https://IPserveur3/wiki/
    ProxyPass / https://IPserveur4/
    ProxyPassReverse / https://IPserveur4/
    <Proxy *>
    allow from all
    </Proxy>
    SSLEngine on
    SSLCertificateFile /home/mondomaine/ssl.cert
    SSLCertificateKeyFile /home/mondomaine/ssl.key
    Il ne faut surtout pas oublier "SSLProxyEngine On" pour rediriger en SSL
    Maintenant le proxy sur les port 80 et 443 est configuré.

    Mon nouveau problème est la redirection des ports pour les mails (smtp : 25, 587, 465, imap 143, imaps 993, pop3 110 et pop3s 995)
    Ces ports ne concernent pas apache et ne peuvent (a priori) pas être géré par mod-proxy.
    J'ai tenté de faire du DNAT (PREROUTING) sur IPtables mais c'est toujours le proxy qui répond !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    -A PREROUTING -p tcp -m tcp -d 995 --dport 995 -j DNAT --to-destination (IP_Serveurdedestination)
    Cédric Dromzée - Développeur IA https://dromzee.fr

  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
    Points : 12 977
    Points
    12 977
    Par défaut
    Apache écoute sur quels ports ?

    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

  7. #7
    Membre actif
    Avatar de CEDRIC_D
    Homme Profil pro
    Développeur IA Python C# Angular
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Développeur IA Python C# Angular
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Points : 231
    Points
    231
    Par défaut Proxy Dovecot
    _Mac_ merci pour ton intérêt !

    Pour te répondre, Apache écoute les ports 443 et 80
    Mais il me semble que la solution ne soit pas du coté d'Apache (car ce n'est pas du http/https mais un autre protocole).

    Ma configuration se compose de 4 serveurs (hors DNS) :
    • SERVEUR 1 : MX 1 : proxy Postfix vers SERVEUR 4
    • SERVEUR 2 : MX 2 : proxy Postfix vers SERVEUR 4
    • SERVEUR 3 : Proxy Web80 et 443 vers SERVEUR 4
    • SERVEUR 4 : Serveur d'hébergement : mail (Postfix...) et Web Apache (Drupal, Roundcube ...)


    Ce qui fonctionne :
    • L’accès au site web (80 et 443) hébergé sur le SERVEUR 4 en passant par le SERVEUR 3 (c'est bien l'IP du serveur 3 qui est visible mais l'hébergement est sur le serveur 4)
    • L'envoie / réception de mails en passant par les deux proxy MX :
    • via le webmail (Roundcube) (hébergement et mails stockés sur SERVEUR 4)
    • via client de messagerie (Outlook ...) mais en utilisant l'IP du Serveur 4 dans les paramètres de réception envois IMAP/SMTP


    Les problèmes
    • je ne souhaite pas utiliser l'IP du serveur 4 (pour le cacher derrière un proxy)
    • Gmail n'accepte de récupérer les mails que sur des serveurs disposant d'un certificat par une CA publique. Hors je dispose de ce certificat sur mon domaine.
    • Actuellement c'est le SERVEUR 3 qui répond aux clients (et non le SERVEUR 4 !)


    Solution probable
    Apparemment il faut configurer DOVECOT en proxy sur le serveur 3
    je n'utilise pas le mod_proxy d'Apache car celui-ci utilise http ou https
    Pour le moment je n'y arrive pas, mais je posterai si je trouve une solution
    Cédric Dromzée - Développeur IA https://dromzee.fr

  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
    Points : 12 977
    Points
    12 977
    Par défaut
    Là, je ne peux pas t'aider. A mon avis, faut oublier Apache sur ce sujet d'envoi de mail car il ne gère absolument pas en standard les protocoles SMTP, POP ou IMAP. Après, y a peut-être des modules fait pour, je ne sais pas.

    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

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

Discussions similaires

  1. Lien d'un sous domaine vers un autre
    Par Nelieru dans le forum Apache
    Réponses: 2
    Dernier message: 08/10/2010, 22h08
  2. Réponses: 2
    Dernier message: 12/09/2008, 11h20
  3. Réponses: 4
    Dernier message: 23/01/2008, 17h55
  4. Réponses: 1
    Dernier message: 28/12/2007, 21h43
  5. DNS : faire pointer un domaine vers un autre
    Par aurapp dans le forum Serveurs (Apache, IIS,...)
    Réponses: 2
    Dernier message: 01/06/2007, 16h38

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