WordPress : Le problème de surcharge CPU est résolu

Le serveur est mort, vive WordPress !!!

Depuis plusieurs semaines déjà notre serveur accusait quelques plantages avec des processus apache faisant tourner notre CPU à 100%. « incredible!!! »

Comme de bien entendu, tous le monde se jette alors sur l’admin réseau (c’est à dire moi :-p) et là… impossible de trouver d’où vient exactement le problème :-S sinon que l’on suspecte très fortement notre propre blog O2Sources !

Après cent mille recherches sur Google (avec ma phrase fétiche du jour « apache wordpress problem cpu charge ») et de long brain storming au sein de notre team, nous avons non seulement identifié le problème mais nous l’avons aussi corrigé, YESSS !

À l’installation du blog l’erreur suivante était très probablement survenue :

Warning: unpack() [function.unpack]: Type V: not enough input, need 4, have 0 in … /wp-includes/gettext.php on line 91
Warning: unpack() [function.unpack]: Type V: not enough input, need 4, have 0 in … /wp-includes/gettext.php on line 91
Fatal error: Maximum execution time of 30 seconds exceeded in … /wp-includes/streams.php on line 84

Et le mauvais réflexe premier fut forcement de mettre la commande suicide dans le .htaccess :

php_value max_execution_time 540

Et là c’est le drame, la tuerie de notre pauvre serveur Atlas a commencé. :’-(

Mais le problème était autre et il suffisait de couper les magic_quotes_runtime car elles empêchent le bon fonctionnement de la fonction unpack sous les dernières versions de PHP5.

En parcourant les forums j’ai aussi trouvé une autre commande qui ne mange pas de pain et je l’ai mise aussi dans mon .htaccess au cas où…

Donc si vous avez le même problème que nous avec WordPress, placez les lignes suivantes dans votre .htaccess :

php_flag magic_quotes_runtime Off

Et voilà 3 heures de perdues pour (presque) rien !

12 Commentaires

  1. Bah pas perdues non vu que le problème est corrigé 🙂

  2. Pingback: www.fuzz.fr

  3. Moi j’adore WordPress, pas vous ? 😉

    Next step: à vot’ bon coeur sivôplé, http://trac.wordpress.org/timeline 🙂

  4. Bonjour,

    J’ai un pb de plantage récurrent sur mon serveur dédié qui héberge plusieurs blogs wordpress, j’aurais voulu savoir si c’était dû au même problème que toi ?

    Me conseilles-tu d’essayer ton astuce sur le htaccess ?

    Merci 😉

  5. @Job
    Salut,
    Je pense que tu es en plein dans le même problème que nous avons eu.
    Je n’ai pas eu le temps d’éditer un erratum mais on s’est aperçu que le problème survient de temps à autres même avec la solution ci-dessus. La manière radicale pour résoudre ce problème c’est de laisser les blogs Wordress en anglais le temps que les mises à jours des différents intervenants arrivent (Wordress ou PHP)…
    Good luck

  6. « la tuerie de notre pauvre serveur atlas a commence », je n’ai pas out à fait saisi ce point précis.bà part cela, billet très intéressant, comme souven ! merci et cotninue !

  7. Bonjour,

    Peux-tu me dire comment passer de la version française à la version anglaise ?

  8. @centurion,

    Bonjour,

    Si tu as téléchargé WP depuis le portail francophone et donc téléchargé le bundle FR, il te suffit de modifier le fichier wp-config.php et de commenter la ligne

    define (‘WPLANG’, ‘fr_FR’);

    @+

  9. Merci pour l’astuce.
    Sais-tu si la version 2.6.3 corrige le problème ?

  10. Bonjour tout le monde,

    juste une petite question comme ça dans le vent pour ceux qui ont eu ce problème : est-ce que vous n’aviez pas installer Egroupware sur votre machine ?
    Nous n’avons jamais eu ce problème avec WP. Lorsque nous avons installé Egroupware, et que nous nous connections dessus, c’est là que les problèmes ont commencés. Nous avons donc décidé de supprimer Egroupware de ce serveur et de l’installer sur notre serveur de développement! Du coup, plus de problème sur le 1er serveur avec WP, … mais les problèmes se trouvent maintenant sur le serveur de dev!
    Je sais pas, mais il semble qu’il y ait tout de même une relation de cause à effet (ou d’effet de cause…) entre ces 2 softs…
    À bon entendeur…

  11. @Luc

    J’ai plusieurs serveurs avec des WP sur chacun, le seul sur lequel je rencontre le pb est effectivement celui sur lequel est installé eGroupware !!!

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *