Bonjour,
Pour donner accès à nos filiales à une ressource sur notre domaine interne, dans l'immédiat je dois passer via un RP basé sur Apache+mod_proxy.
Je cherche à faire une translation "dynamique" de http://*.domain.tld/* vers http://*.domain.lan/*
En creusant, je suis tombé sur ProxyPassInterpolateEnv ( https://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypassinterpolateenv )
Du coup, j'en arrive à la conf suivant :
<Virtualhost *> ServerName domain.tld ServerAlias *.domain.tld
ProxyRequests Off
RewiriteEngine On RewriteCond %{REMOTE_HOST] (.*).domain.tld RewriteRule ^/(.*) http://%5BE=myhost:%1%5D.domain.lan/$1 [P]
ProxyPass / http://$%7Bmyhost%7D.domain.lan/ interpolate ProxyPassReverse / http://$%7Bmyhost%7D.domain.lan/ interpolate </VirtualHost>
Et pour domain.lan :
<Virtualhost *> ServerName domain.lan ServerAlias *.domain.lan
VirtualDocumentRoot /var/www/domain.lan/%1 DirectoryIndex index.html
<Directory /var/www/domain.lan/> Order Allow, Deny Allow from all </Directory> </VirtualHost>
En l'état, il semble que ${myhost} ne soit pas résolu et donc j'obtiens comme erreur : DNS Lookupfailure for : .domain.lan
Est-ce que qqn ici l'a déjà utilisé et voit où ça coince ? Les quelques exemples trouvés sur le net ne m'ont pas parlé pour le moment.
Merci d'avance, Nicolas
Je pense que ce que tu veux faire correspond assez bien à l'usage de ce modulte httpd :
http://git.meleeweb.net/cgit.cgi/mod_virtualvalue.git/
qui s'emploie de cette façon : http://git.meleeweb.net/cgit.cgi/mod_virtualvalue.git/tree/test/vhost.conf
2012/12/19 Nicolas Steinmetz nsteinmetz@gmail.com
Bonjour,
Pour donner accès à nos filiales à une ressource sur notre domaine interne, dans l'immédiat je dois passer via un RP basé sur Apache+mod_proxy.
Je cherche à faire une translation "dynamique" de http://*.domain.tld/* vers http://*.domain.lan/*
En creusant, je suis tombé sur ProxyPassInterpolateEnv ( https://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypassinterpolateenv )
Du coup, j'en arrive à la conf suivant :
<Virtualhost *> ServerName domain.tld ServerAlias *.domain.tld
ProxyRequests Off RewiriteEngine On RewriteCond %{REMOTE_HOST] (.*).domain.tld RewriteRule ^/(.*) http://[E=myhost:%1].domain.lan/$1 [P] ProxyPass / http://${myhost}.domain.lan/ interpolate ProxyPassReverse / http://${myhost}.domain.lan/ interpolate
</VirtualHost>
Et pour domain.lan :
<Virtualhost *> ServerName domain.lan ServerAlias *.domain.lan
VirtualDocumentRoot /var/www/domain.lan/%1 DirectoryIndex index.html <Directory /var/www/domain.lan/> Order Allow, Deny Allow from all </Directory>
</VirtualHost>
En l'état, il semble que ${myhost} ne soit pas résolu et donc j'obtiens comme erreur : DNS Lookupfailure for : .domain.lan
Est-ce que qqn ici l'a déjà utilisé et voit où ça coince ? Les quelques exemples trouvés sur le net ne m'ont pas parlé pour le moment.
Merci d'avance, Nicolas -- Nicolas Steinmetz http://www.steinmetz.fr - http://nicolas.steinmetz.fr/
Liste de diffusion du FRsAG http://www.frsag.org/
Le 19 décembre 2012 22:46, Steven Le Roux steven@le-roux.info a écrit :
Je pense que ce que tu veux faire correspond assez bien à l'usage de ce modulte httpd :
http://git.meleeweb.net/cgit.cgi/mod_virtualvalue.git/
qui s'emploie de cette façon : http://git.meleeweb.net/cgit.cgi/mod_virtualvalue.git/tree/test/vhost.conf
Sympa en effet, sauf que ça va pas être possible de faire ajouter un module tiers sur nos RPs :(
Par contre, comme la conf utilise "SetEnv", je vais voir si je peux jouer avec ça...
Merci, Nicolas
Le 19/12/2012 18:03, Nicolas Steinmetz a écrit :
Bonjour,
Pour donner accès à nos filiales à une ressource sur notre domaine interne, dans l'immédiat je dois passer via un RP basé sur Apache+mod_proxy.
Je cherche à faire une translation "dynamique" de http://*.domain.tld/* vers http://*.domain.lan/*
En creusant, je suis tombé sur ProxyPassInterpolateEnv (https://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypassinterpolateenv)
Du coup, j'en arrive à la conf suivant :
<Virtualhost *> ServerName domain.tld ServerAlias *.domain.tld
ProxyRequests Off RewiriteEngine On RewriteCond %{REMOTE_HOST] (.*).domain.tld RewriteRule ^/(.*) http://[E=myhost:%1].domain.lan/$1 [P] ProxyPass / http://${myhost}.domain.lan/ interpolate ProxyPassReverse / http://${myhost}.domain.lan/ interpolate
</VirtualHost>
Et pour domain.lan :
<Virtualhost *> ServerName domain.lan ServerAlias *.domain.lan
VirtualDocumentRoot /var/www/domain.lan/%1 DirectoryIndex index.html <Directory /var/www/domain.lan/> Order Allow, Deny Allow from all </Directory>
</VirtualHost>
En l'état, il semble que ${myhost} ne soit pas résolu et donc j'obtiens comme erreur : DNS Lookupfailure for : .domain.lan
Est-ce que qqn ici l'a déjà utilisé et voit où ça coince ? Les quelques exemples trouvés sur le net ne m'ont pas parlé pour le moment.
Bonjour,
Pour ma part, je n'utilise que basiquement mod_proxy, mais une config de ce type devrait fonctionner :
<VirtualHost IPduProxy:80> ServerName webmail.domaine.com
ProxyRequests Off ProxyVia Off ProxyPass / http://webmail.domaine.local ProxyPassReverse / http://webmail.domaine.local/ </VirtualHost>
Par contre, aucune sécurité n'est présente sur le proxy avec ce type de configuration.
Peut-être faudrait-il se pencher vers un serveur qui ne fait que proxy sécurisé, tel que Vulture (http://vulture.open-source.fr).
Concernant la translation, le domaine en .lan n'étant pas visible sur Internet, cela ne peut-pas être affiché dans le navigateur des filiales. C'est le proxy qui justement va faire la translation entre le domaine externe et local.