Proxy non configuré dans le navigateur : redirection ou page d'information

Redirection transparente HTTP sur Amon

À partir d'EOLE 2.6, la redirection transparente HTTP est remplacée par une redirection vers une page d'information proposée par Nginx.

Remarque

Techniquement, cela se traduit par le remplacement de la redirection des accès directs HTTP (port 80) vers le proxy local (port 3128) par une redirection vers une adresse dédiée (port 81) dans les modèles ERA. On retrouve ainsi le même fonctionnement que pour la navigation HTTPS.

Truc & astuce

Dans l'onglet Exceptions proxy de l'interface de configuration du module, il est possible de déclarer des adresses de destination qui ne passeront pas par le proxy.

Page d'information renvoyée par Nginx

Sur les modules Amon et AmonEcole, la configuration du logiciel Nginx a été adaptée afin de détecter le cas où le navigateur du client n'a pas été configuré correctement et lui renvoyer un message d'erreur suffisamment explicite. La page Nginx est également affichée également si la requête initiale est en HTTPS.

Page d'erreur renvoyée par Nginx en cas de proxy non configuré
Page d'erreur renvoyée par Nginx en cas de proxy non configuré

Truc & astuce

La page d'erreur affichée dans le navigateur peut être personnalisée.

Personnaliser la page renvoyée par Nginx à l'aide d'un patch

La page d'erreur affichée dans le navigateur est un template Creole  : /usr/share/eole/creole/distrib/nginx.no_proxy.html

Il est possible de le modifier de façon pérenne en utilisant un patch pour Creole.

Il faut copier le template d'origine dans le répertoire /usr/share/eole/creole/modif/

root@amon:~# cp /usr/share/eole/creole/distrib/nginx.no_proxy.html /usr/share/eole/creole/modif/nginx.no_proxy.html

Il faut éditer, modifier et enregistrer le fichier copié

root@amon:~# vim /usr/share/eole/creole/modif/nginx.no_proxy.html

Puis il faut générer le patch à l'aide de la commande gen_patch

root@amon:~# gen_patch

Le fichier contenant les différences est créé dans le répertoire /usr/share/eole/creole/patch/

Attention

Les changements prennent effet après la reconfiguration du serveur à l'aide de la commande reconfigure

root@amon:~# reconfigure

La page servie par Nginx contient les modifications :

root@amon:~# vim /var/www/index.html

Exemple

1
root@amon:~# cp /usr/share/eole/creole/distrib/nginx.no_proxy.html /usr/share/eole/creole/modif/nginx.no_proxy.html
2
root@amon:~# vim /usr/share/eole/creole/modif/nginx.no_proxy.html
3
[...]
4
root@amon:~# gen_patch
5
6
** Génération des patches à partir de modif **
7
8
Génération du patch nginx.no_proxy.html.patch
9
10
** Fin de la génération des patch **
11
12
root@amon:~# ls /usr/share/eole/creole/patch/
13
nginx.no_proxy.html.patch  variante
14
root@amon:~# reconfigure
15
[...]
16
root@amon:~# vim /var/www/index.html

Il est possible d'appeler des variables Creole comme par exemple %%libelle_etab et aussi d'ajouter des images en les ajoutant par exemple dans un dossier /img dans /var/www/.

Exemple

1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2
<html>
3
    <META http-equiv="Content-Type" content="text/html; charset=utf-8;">
4
    <head>
5
<title>Veuillez configurer le proxy de votre navigateur</title>
6
<style>
7
.main {
8
        background:#bbbbbb;
9
        text-align:center;
10
}
11
h1 {
12
    /* text-shadow: 0px 0px 7px rgba(0, 0, 0, 0.75);*/
13
    color: #91e842;
14
    font-size: 50px;
15
    text-align:center;
16
    text-shadow: 0 1px 0 #eee,
17
             0 2px 0 #e5e5e5,
18
             -1px 3px 0 #C8C8C8,
19
             -1px 4px 0 #C1C1C1,
20
             -2px 5px 0 #B9B9B9,
21
             -2px 6px 0 #B2B2B2,
22
             -2px 7px 2px rgba(0,0,0, 0.6),
23
             -2px 7px 8px rgba(0,0,0, 0.2),
24
             -2px 7px 45px rgba(0,0,0, 0.4);
25
}
26
.message {
27
    top:25%;
28
    text-align:center;
29
    margin-left: 50px;
30
    margin-right: 50px;
31
32
    padding: 40px;
33
    background: #d2ff52;
34
    border: 1px solid #000000;
35
36
    border-radius: 10px;
37
    -moz-border-radius: 10px;
38
    -webkit-border-radius: 10px;
39
40
    box-shadow: 5px 7px 10px 6px rgba(119, 119, 119, 0.75);
41
    -moz-box-shadow: 5px 7px 10px 6px rgba(119, 119, 119, 0.75);
42
    -webkit-box-shadow: 5px 7px 10px 6px rgba(119, 119, 119, 0.75);
43
}
44
</style>
45
    </head>
46
    <body class='main'>
47
    <img src="./img/logoEolePt.png">
48
    <h1>%%libelle_etab</h1>
49
    <h2>Votre navigateur n'est pas correctement configuré !!</h2>
50
    <div class="message">Pour naviguer sur internet, un proxy doit être déclaré dans votre navigateur.<br />
51
Si vous accédez à la présente page, c'est que votre navigateur n'est pas configuré pour utiliser le proxy. Veuillez contacter le service informatique de l'établissement.</div>
52
    </body>
53
</html>
54
Page d'erreur renvoyée par Nginx en cas de proxy non configuré
Page d'erreur renvoyée par Nginx en cas de proxy non configuré