Bonjour,

J'ai une application en Java web dont l'accès se fait à travers deux URL : un interne (http://site1.fr) et l'autre externe (https://site1_externe.fr).
Dans la page d'accueil de cette application, il y a un lien vers une autre interface renseigné dans le web.xml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
<init-param>
<param-name>site2.url</param-name>
<param-value>http://site2.fr/logon.jsp</param-value>
</init-param>
indépendamment du lien de l'application on peut accéder à l'url du site2 en extranet à travers (https://site2_externe.fr)

le problème que j'ai est que le lien marche en interne et quand je suis en externe et je clique sur le lien je tombe sur le l'url du site2 en interne.

la configuration des proxy est faite selon un couplage Apache Tomcat comme suit :
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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 
# RSI: 23022010: site2 (acces externe) 
NameVirtualHost IP1:443
NameVirtualHost IP2:443
 
<VirtualHost IP1:443>
        SSLEngine On
        SSLCertificateFile /etc/ssl/site1_externe.fr.cer
        SSLCertificateKeyFile  /etc/ssl/site1_externe.fr.key
	SSLCACertificateFile /usr/local/apache/certificats/telemac/AC_CERTINOMIS_SSL.cer
        SSLCipherSuite ALL:!ADH:!DSS:!EXPORT56:!AES256-SHA:!DHE-RSA-AES256-SHA:@STRENGTH:+3DES:+DES
        SSLProtocol all -SSLv2
        ServerName site1_externe.fr
        ServerAlias site1_externe
        <Location />
                Order allow,deny
                Allow from all
        </Location>
        RewriteEngine On
 
        RedirectPermanent / https://site1_externe.fr/login
        RewriteRule ^/site1/(.*) http://serveur.fr$1 [P,L]
        CustomLog logs/ssl_access_site1_log combined
</VirtualHost>
 
<VirtualHost IP2:443>
        SSLEngine On
        SSLCertificateFile /etc/ssl/site2_externe.fr.cer
        SSLCertificateKeyFile  /etc/ssl/site2_externe.fr.key
	SSLCACertificateFile /usr/local/apache/certificats/telemac/AC_CERTINOMIS_SSL.cer
        SSLCipherSuite ALL:!ADH:!DSS:!EXPORT56:!AES256-SHA:!DHE-RSA-AES256-SHA:@STRENGTH:+3DES:+DES
        SSLProtocol all -SSLv2
        ServerName site2_externe.fr
        ServerAlias site2_externe
        <Location />
                Order allow,deny
                Allow from all
        </Location>
 
        <Location /Application>
                Order allow,deny
                Deny from all
        </Location>
 
        RewriteEngine On
        ProxyPass / http://site2_externe.fr/
        ProxyPassReverse / http://site2_externe.fr/
 
        CustomLog logs/ssl_access_site2_log combined
</VirtualHost>
Je veux que mon lien puisse marcher pour les deux cas :
- si je suis en interne sur http://site1.fr et je clique sur le lien je suis dirigé vers http://site2.fr
- si je suis en externe sur https://site1_externe.fr et je clique sur le lien je suis dirigé vers https://site2_externe.fr

je ne sais pas si la modification doit être faite au niveau du code de l'application ou au niveau du serveur Apache.

Merci d'avance pour vos lumières.