Jump to content

HTTP 500 Internal Server Error alétoire lors du chargement des modules BO


Recommended Posts

Bonjour,

 

J'ai une boutique en PS 1.6.1.12 qui fonctionne en FO sans problème, en BO également, sauf lorsque je charge les modules, 1 fois sur 10 j'ai une erreur HTTP 500 Internal Server Error je rafraichis la page et ça repart. Je précise que le problème est totalement aléatoire donc impossible d'activer le mode debug.

 

Auriez vous des conseils pour tenter de résoudre ce bug?

Link to comment
Share on other sites

Je viens de vérifier, j'ai un VPS cloud de chez OVH 2014 avec un CPU AMD Opteron Processor 6386 SE 2,8 Ghz (12 Mo de cache) + 2 Go de RAM + 20 Go SSD en RAID10 + Plesk Web Admin 14.04 on Ubuntu.

 

Mon site fait 450 Mo et ma bdd 7,8 Mo, j'ai monitoré pendant le chargement de la page module et je n'ai pas de pic de surconsommation (tout reste dans la normal). Sur mon monitoring (7 jours), je n'ai aucun pic de saturation, rien qui pourrait expliquer cela.

 

Je remarque que j'obtiens cette erreur après 30 - 40 s de chargement de la page (le chargement de la page des modules lorsque je n'ai pas d'erreur prend environ 45 s ce qui est long)

 

Je vais regarder les logs de mon serveur voir si j'ai pas une erreur lorsque le HTTP 500 apparait et vous tine au courant.

Link to comment
Share on other sites

Ok on peut partir du principe que l'hébergement est assez costaud alors.

 

Y a des chances que ça vienne d'un module en particulier (et si c'est le cas ça viendrait certainement d'un module qui a le paramètre "need_instance" sur true).

 

Les logs t'en diront plus et sinon tu peux essayer de désactiver les modules "non Prestashop" aussi

Link to comment
Share on other sites

Bonjour BeCom,

 

J'ai regardé les logs de mon serveur lors du dernier HTTP 500 et j'obtiens cela :

[Wed Mar 29 11:01:33.887041 2017] [fcgid:warn] [pid 1957] [client 90.73.210.20:34960] mod_fcgid: read data timeout in 45 seconds, referer: http://www.test.com/admin.web/index.php?controller=AdminLogin&token=b8bc998d1536078cacdf344cc7c7ce7f&redirect=AdminModules
[Wed Mar 29 11:01:33.887103 2017] [core:error] [pid 1957] [client 90.73.210.20:34960] End of script output before headers: index.php, referer: http://www.test.com/admin.web/index.php?controller=AdminLogin&token=b8bc998d1536078cacdf344cc7c7ce7f&redirect=AdminModules
[Wed Mar 29 11:04:18.870879 2017] [fcgid:warn] [pid 1957] [client 90.73.210.20:35138] mod_fcgid: read data timeout in 45 seconds, referer: http://www.test.com/admin.web/index.php?controller=AdminModules&token=396944a531e110a2578df2b171266231
[Wed Mar 29 11:04:18.870932 2017] [core:error] [pid 1957] [client 90.73.210.20:35138] End of script output before headers: index.php, referer: http://www.test.com/admin.web/index.php?controller=AdminModules&token=396944a531e110a2578df2b171266231
[Wed Mar 29 11:04:18.891169 2017] [fcgid:warn] [pid 27658] [client 90.73.210.20:35140] mod_fcgid: read data timeout in 45 seconds, referer: http://www.test.com/admin.web/index.php?controller=AdminModules&token=396944a531e110a2578df2b171266231
[Wed Mar 29 11:04:18.891253 2017] [core:error] [pid 27658] [client 90.73.210.20:35140] End of script output before headers: ajax-tab.php, referer: http://www.test.com/admin.web/index.php?controller=AdminModules&token=396944a531e110a2578df2b171266231

Je vais regarder à quoi corresponde ces erreurs, mais auriez une idée?

Link to comment
Share on other sites

Bonjour BeCom,
 
Comment savoir les modules s'instancient au chargement de la page?  Où doit on regarder pour savoir si un module a la propriété $this->need_instance?

 

Pour le warning, c'est un réglage php à faire sur mon serveur je vais augmenter le délai du timeout,

 

Par contre pour le End of script output before headers: index.php je nage un peu, apparemment ça viendrai du timeout.

Link to comment
Share on other sites

Bonjour,

 

Concernant le répertoire modules s'agit il de celui à la racine de mon thème ou celui à la racine de /www/ ?

 

Le fichier à ouvrir est, je suppose, celui qui s'appelle nomdumodule.php, est ce bien cela?

Link to comment
Share on other sites

Bonjour BeComWeb,

 

J'ai donc regarder dans les fichiers nomdumodule.php dans le dossier module à la racine du /www/ sur mon ftp, j'ai 4 fichiers qui ont cette $this->need_instance = 1 :

 

  • cashondelivery.php
  • eicaptcha.php
  • eurovatgenerator.php
  • mailchimp.php (que j'ai ajouté en début de semaine donc le HTTP 500 était déjà présente)

Qu'en pensez vous? Faut il que je cherche dans d'autres dossiers?

 

Petite précision, je viens de voir que je n'ai aucun aucun module installé et activé pour la génération de TVA européenne. De même sur mes anciens backup j'ai bien le dossier de ce module mais dans ce dernier je n'ai que le dossier Translation alors qu'actuellement j'ai le fichier php ainsi que les tpl. Comment est ce possible d'avoir ce module installé alors que sur le BO je n'ai rien (peut être suite à la MAJ à PS 1.6.1.12?)

 

Je vois le module que je peux installer et activer mais à l'heure actuelle ce n'est pas le cas, faut il l'installer?

Edited by lucho84 (see edit history)
Link to comment
Share on other sites

  • 2 weeks later...

C'est réversible et à vue de nez je dirais que de toute façon ça n'impactera pas le fonctionnement des 4 modules cités.

 

En gros la méthode c'est de désactiver l’instanciation des 4 modules au chargement de la page "Modules" du BO et de voir si ça résout le problème (ce qui n'est pas certain, c'est une piste mais pas forcément LA solution).

Si ça fonctionne tu en "réactives" 2. Si ça fonctionne toujours tu en réactives 1 sur les 2 restants. Etc... Tu fais une élimination "en entonnoir". 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...