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 :

Ajout de status code dans Apache


Sujet :

Apache

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    55
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2005
    Messages : 55
    Points : 26
    Points
    26
    Par défaut Ajout de status code dans Apache
    Bonjour,

    Suite à une demande d'un client, j'ai mon serveur weblogic qui me renvoie un code status compris entre 600 et 700. Le proxy apache (version 2.2.14) reçoit bien le code (on le voit dans les logs apache) mais me renvois un code 500.

    J'ai modifié les 2 variables suivantes du httpd.h:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define ap_is_HTTP_SUCCESS(x)      ((((x) >= 200)&&((x) < 300))||(((x) >= 600)&&((x) <= 700)))
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define ap_is_HTTP_VALID_RESPONSE(x) (((x) >= 100)&&((x) <= 700))
    mais le problème reste le même....
    y a t-il quelque chose à faire entre la modification du httpd.h et la recompilation?
    y a t il d'autres fichiers à modifier?

    Merci d'avance pour votre aide!!!!!

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    55
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2005
    Messages : 55
    Points : 26
    Points
    26
    Par défaut
    c'est bon j'ai trouvé....
    il faut aller dans le code source d'apache. En fait tout est fait pour ne pas que l'on rajoute des code status!!!
    il y a 2 fichiers à modifier (pour la version 2.2.14) httpd.h(dans httpd-2.2.14/include/) et http_protocol.c(dans httpd-2.2.14/modules/http/)

    dans le httpd.h:
    - modifier la valeur de RESPONSE_CODES en additionnant les codes que vous rajoutez
    - rajoutez tous les #define HTTP_ que vous avez besoin
    - modifiez
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define ap_is_HTTP_SUCCESS(x)      ((((x) >= 200)&&((x) < 300))||(((x) >= 600)&&((x) <= 700)))
    (j'ai rajouté les codes 600 à 700)
    - modifiez
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define ap_is_HTTP_VALID_RESPONSE(x) (((x) >= 100)&&((x) <= 700))
    pour le http_protocol.c
    - dans le tableaux status_lines rajoutez tous vos codes réponses supplémentaires ainsi que leur libellé.
    - au besoin rajouter les nouvelles "familles" , pour moi :
    #define LEVEL_600 57
    idem pour le level 700
    - modifiez la fonction ap_index_of_response comme ceci:
    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
     
    AP_DECLARE(int) ap_index_of_response(int status)
    {
        static int shortcut[8] = {0, LEVEL_200, LEVEL_300, LEVEL_400,
        LEVEL_500, LEVEL_600, LEVEL_700, RESPONSE_CODES};
        int i, pos;
     
        if (status < 100) {               /* Below 100 is illegal for HTTP status */
            return LEVEL_500;
        }
     
        for (i = 0; i < 7; i++) {
            status -= 100;
            if (status < 100) {
                pos = (status + shortcut[i]);
                if (pos < shortcut[i + 1]) {
                    return pos;
                }
                else {
                    return LEVEL_500;            /* status unknown (falls in gap) */
                }
            }
        }
        return LEVEL_500;                         /*701 or above is also illegal */
    }
    recompilez, et voila ca devrait marcher!

    si ca peut aider qq un....

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

Discussions similaires

  1. Tuto ajouter des qr codes dans les fiches contact Salesforce
    Par artiom dans le forum Salesforce.com
    Réponses: 0
    Dernier message: 13/02/2014, 15h57
  2. Ajouter du code dans le code d'une feuille
    Par srame dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 20/04/2007, 12h05
  3. Réponses: 1
    Dernier message: 24/05/2006, 16h08
  4. Ajouter une colonne (par du code) dans Listview
    Par __fabrice dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 23/11/2005, 18h39
  5. [C#]ajout code dans code behind
    Par liliprog dans le forum ASP.NET
    Réponses: 8
    Dernier message: 21/06/2005, 12h03

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