Subversion Repositories ALCASAR

Rev

Go to most recent revision | Details | Last modification | View Log

Rev Author Line No. Line
3231 rexy 1
<?php
2
// $Id: error.php 2237 2017-05-20 20:42:38Z tom.houdayer $
3
 
4
if (isset($_GET['error'])) {
5
        # Choice of language
6
        $Language = 'en';
7
        if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
8
                $Langue = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']);
9
                $Language = strtolower(substr(chop($Langue[0]), 0, 2));
10
        }
11
 
12
        if ($Language === 'fr') {       // French
13
                switch ($_GET['error']) {
14
                        case 400:
15
                                $l_error = "Erreur 400";
16
                                $l_explanation = "La requête HTTP n'a pas pu être comprise par le serveur en raison d'une syntaxe erronée.<br>
17
                                                  Le problème peut provenir d'un navigateur web trop récent ou d'un serveur HTTP trop ancien.";
18
                                break;
19
                        case 401:
20
                                $l_error = "Erreur 401";
21
                                $l_explanation = "La requête nécessite une identification de l'utilisateur.<br>
22
                                                  Concrètement, cela signifie que tout ou partie du serveur contacté est protégé par un mot de passe, qu'il faut indiquer au serveur pour pouvoir accéder à son contenu.";
23
                                break;
24
                        case 403:
25
                                $l_error = "Erreur 403";
26
                                $l_explanation = "Le serveur HTTP a compris la requête, mais refuse de la traiter.<br>
27
                                                  Ce code est généralement utilisé lorsqu'un serveur ne souhaite pas indiquer pourquoi la requête a été rejetée, ou lorsque aucune autre réponse ne correspond (par exemple le serveur est un Intranet et seules les machines du réseau local sont autorisées à se connecter au serveur).";
28
                                break;
29
                        case 404:
30
                                $l_error = "Erreur 404";
31
                                $l_explanation = "Le serveur n'a rien trouvé qui corresponde à l'adresse (URI) demandée ( non trouvé ).<br>
32
                                                  Cela signifie que l'URL que vous avez tapée ou cliquée est mauvaise ou obsolète et ne correspond à aucun document existant sur le serveur (vous pouvez essayez de supprimer progressivement les composants de l'URL en partant de la fin pour éventuellement retrouver un chemin d'accès existant).";
33
                                break;
34
                        case 405:
35
                                $l_error = "Erreur 405";
36
                                $l_explanation = "Ce code indique que la méthode utilisée par le client n'est pas supportée pour cet URI.";
37
                                break;
38
                        case 408:
39
                                $l_error = "Erreur 408";
40
                                $l_explanation = "Le client n'a pas présenté une requête complète pendant le délai maximal qui lui était imparti, et le serveur a abandonné la connexion.";
41
                                break;
42
                        case 410:
43
                                $l_error = "Erreur 410";
44
                                $l_explanation = "L'adresse (URI) demandée n'existe plus et a été définitivement supprimée du serveur.";
45
                                break;
46
                        case 411:
47
                                $lerror = "Erreur 411";
48
                                $l_explanation = "Le serveur a besoin de connaître la taille de cette requête pour pouvoir y répondre.";
49
                                break;
50
                        case 413:
51
                                $l_error = "Erreur 413";
52
                                $l_explanation = "Le serveur ne peut traiter la requête car la taille de son contenu est trop importante.";
53
                                break;
54
                        case 414:
55
                                $l_error = "Erreur 414";
56
                                $l_explanation = "Le serveur ne peut traiter la requête car la taille de l'objet (URI) a retourner est trop importante.";
57
                                break;
58
                        case 415:
59
                                $l_error = "Erreur 415";
60
                                $l_explanation = "Le serveur ne peut traiter la requête car son contenu est écrit dans un format non supporté.";
61
                                break;
62
                        case 500:
63
                                $l_error = "Erreur 500";
64
                                $l_explanation = "Le serveur HTTP a rencontré une condition inattendue qui l'a empêché de traiter la requête.<br>
65
                                                  Cette erreur peut par exemple être le résultat d'une mauvaise configuration du serveur, ou d'une ressource épuisée ou refusée au serveur sur la machine hôte.";
66
                                break;
67
                        case 501:
68
                                $l_error = "Erreur 501";
69
                                $l_explanation = "Le serveur HTTP ne supporte pas la fonctionnalité nécessaire pour traiter la requête.<br>
70
                                                  C'est la réponse émise lorsque le serveur ne reconnaît pas la méthode indiquée dans la requête et n'est capable de la mettre en oeuvre pour aucune ressource (soit le navigateur web est trop récent, soit le serveur HTTP est trop ancien).";
71
                                break;
72
                        case 502:
73
                                $l_error = "Erreur 502";
74
                                $l_explanation = "Le serveur intermédiaire a fourni une réponse invalide.<br>
75
                                                  Le serveur HTTP a agi en tant qu'intermédiaire (passerelle ou proxy) avec un autre serveur, et a reçu de ce dernier une réponse invalide en essayant de traiter la requête.";
76
                                break;
77
                        case 503:
78
                                $l_error = "Erreur 503";
79
                                $l_explanation = "Le serveur HTTP est actuellement incapable de traiter la requête en raison d'une surcharge temporaire ou d'une opération de maintenance.<br> Cela sous-entend l'existence d'une condition temporaire qui sera levée après un certain délai.";
80
                                break;
81
                        case 506:
82
                                $l_error = "Erreur 506";
83
                                $l_explanation = "Erreur de négociation transparent content negociation.";
84
                                break;
85
                        default:
86
                                $l_error = "Non reconnu";
87
                                $l_explanation = "Erreur non reconnu.";
88
                                break;
89
                }
90
        } else {                        // English
91
                switch ($_GET['error']){
92
                        case 400:
93
                                $l_error = "Error 400";
94
                                $l_explanation = "The HTTP request could not be understood by the server due to malformed syntax.<br>
95
                                                  The web browser may be too recent, or the HTTP server may be too old.";
96
                                break;
97
                        case 401:
98
                                $l_error = "Error 401";
99
                                $l_explanation = "The request requires user authentication.<br>
100
                                                  This means that all or a part of the requested server is protected by a password that should be given to the server to allow access to its contents.";
101
                                break;
102
                        case 403:
103
                                $l_error = "Error 403";
104
                                $l_explanation = "The HTTP server understood the request, but is refusing to fulfill it.<br>
105
                                                  This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable (for example the server is an Intranet and only the LAN machines are authorized to connect).";
106
                                break;
107
                        case 404:
108
                                $l_error = "Error 404";
109
                                $l_explanation = "The server has not found anything matching the requested address (URI) ( not found ).<br>
110
                                                  This means the URL you have typed or cliked on is wrong or obsolete and does not match any document existing on the server (you may try to gradualy remove the URL components from the right to the left to eventualy retrieve an existing path).";
111
                                break;
112
                        case 405:
113
                                $l_error = "Error 405";
114
                                $l_explanation = "This code is given with the Allow header and indicates that the method used by the client is not supported for this URI.";
115
                                break;
116
                        case 408:
117
                                $l_error = "Error 408";
118
                                $l_explanation = "This response code means the client did not produce a full request within some predetermined time (usually specified in the server's configuration), and the server is disconnecting the network connection.";
119
                                break;
120
                        case 410:
121
                                $l_error = "Error 410";
122
                                $l_explanation = "This code indicates that the requested URI no longer exists and has been permanently removed from the server.";
123
                                break;
124
                        case 411:
125
                                $lerror = "Error 411";
126
                                $l_explanation = "The server will not accept the request without a Content-Length header supplied in the request.";
127
                                break;
128
                        case 413:
129
                                $l_error = "Error 413";
130
                                $l_explanation = "The server will not process the request because its entity body is too large.";
131
                                break;
132
                        case 414:
133
                                $l_error = "Error 414";
134
                                $l_explanation = "The server will not process the request because its request URI is too large.";
135
                                break;
136
                        case 415:
137
                                $l_error = "Error 415";
138
                                $l_explanation = "The server will not process the request because its entity body is in an unsupported format.";
139
                                break;
140
                        case 500:
141
                                $l_error = "Error 500";
142
                                $l_explanation = "The HTTP server encountered an unexpected condition which prevented it from fulfilling the request.<br>
143
                                                  For example this error can be caused by a serveur misconfiguration, or a resource exhausted or denied to the server on the host machine.";
144
                                break;
145
                        case 501:
146
                                $l_error = "Error 501";
147
                                $l_explanation = "The HTTP server does not support the functionality required to fulfill the request.<br>
148
                                                  This is the appropriate response when the server does not recognize the request method and is not capable of supporting it for any resource (either the web browser is too recent, or the HTTP server is too old).";
149
                                break;
150
                        case 502:
151
                                $l_error = "Error 502";
152
                                $l_explanation = "The gateway server returned an invalid response.<br>
153
                                                  The HTTP server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request.";
154
                                break;
155
                        case 503:
156
                                $l_error = "Error 503";
157
                                $l_explanation = "The HTTP server is currently unable to handle the request due to a temporary overloading or maintenance of the server.<br>
158
                                                  The implication is that this is a temporary condition which will be alleviated after some delay.";
159
                                break;
160
                        case 506:
161
                                $l_error = "Error 506";
162
                                $l_explanation = "Transparent content negotiation for the request results in a circular reference.";
163
                                break;
164
                        default:
165
                                $l_error = "Unknown";
166
                                $l_explanation = "Unknown error.";
167
                                break;
168
                }
169
        }
170
}
171
 
172
// Cleaning the cache
173
header('Expires: Tue, 01 Jan 2000 00:00:00 GMT');
174
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
175
header('Cache-Control: no-store, no-cache, must-revalidate, max-age=0');
176
header('Cache-Control: post-check=0, pre-check=0', false);
177
header('Pragma: no-cache');
178
?>
179
<!DOCTYPE html>
180
<html>
181
        <head>
182
                <meta charset="UTF-8">
183
                <title>ALCASAR - <?= $l_error; ?></title>
184
                <link rel="stylesheet" type="text/css" href="/css/style_intercept.css">
185
        </head>
186
        <body>
187
                <div id="cadre_titre" class="titre_refus">
188
                        <p id="acces_controle" class="titre_refus"><?= $l_error ?></p>
189
                        <div id="boite_logo"><img src="/images/organisme.png"></div>
190
                </div>
191
 
192
                <div id="contenu_error">
193
                        <?= $l_explanation ?>
194
                </div>
195
        </body>
196
</html>