2010-08-04 39 views
1

Je vais le faire le plus simplement possible tout en continuant à dire tous les détails pertinents. Je vais énumérer les détails du site ci-dessous:Impossible d'ajouter des articles au panier Magento

http:///www.bubblegenius.com (page d'accueil verrouillé off) Vous pouvez accéder au site à l'intérieur et voir exactement ce qui se passe en allant http://www.bubblegenius.com/soap.html.

Un de mes clients a exécuté un magasin de commerce électronique Magento sur un hôte partagé. Après avoir couru avec succès le magasin pendant quelques mois, elle a commencé à éprouver ce qui semblait être des problèmes de mémoire. Le site cesserait occasionnellement de fonctionner ou produirait des «erreurs fatales» lors de l'ajout d'articles au panier.

Lorsque vous cliquez sur Ajouter au panier, l'écran devient blanc - vide - sans aucune erreur d'avertissement. Lorsque je me suis retourné sur la vérification des erreurs dans le fichier index.php et essayé d'ajouter un produit au panier, j'ai reçu les éléments suivants:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 62914560 bytes) in /home/bubblege/public_html/app/code/core/Mage/Core/Model/Session/Abstract.php on line 234 

J'ai essayé upping mémoire php à 128M, 512M, même à l'intérieur 2048M php.ini, .htaccess, et même la mise en index.php avec

ini_set('memory_limi', '2048M'); 

Upping la limite de mémoire à 512 ou ci-dessus ne produit pas ce qui précède erreur fatale, mais ne permettra à aucun élément à ajouter au panier Elle produit le message suivant:

"The item cannot be added to the cart." 

Maintenant, voici le kicker: Nous avons déménagé mon client vers un 768MB en cours d'exécution VPS garanti (w \ 1,5 Go de RAM Burst), et je travaille beaucoup avec le serveur techs pour optimiser le serveur .

Cependant, depuis le passage au VPS, les erreurs se sont poursuivies. Le site fonctionne correctement jusqu'à ce que vous essayiez d'ajouter un article au panier.

J'ai cherché dans tous les babillards magento à la recherche d'une solution à ce bug. J'ai désactivé toutes les extensions et j'ai même essayé d'installer à partir d'une nouvelle version de Magento et d'une version précédente.

J'ai fait des réparations de base de données, l'optimisation, fait une comparaison et corrige avec une base de données propre exécutant une version propre de Magento. À partir de maintenant, je suis autorisé à offrir jusqu'à deux cents dollars pour trouver quelqu'un qui peut résoudre ce problème une fois pour toutes. Si vous avez des idées et des réponses à ce sujet, et pensez que vous pouvez résoudre ce problème, veuillez me contacter ici ou directement. Je peux fournir des informations sur l'accès au serveur et être en mesure de répondre à toutes les questions et solutions possibles avec vous.

De plus, mes antécédents ne sont pas vraiment axés sur le serveur, mais je connais mon chemin et je travaille avec Magento depuis quelques années. Plusieurs de mes autres clients exécutent des sites sans problème.

+0

Je déteste signaler cela parce que vous l'avez probablement déjà vérifié, mais avez-vous aussi mis les limites de mémoire dans le fichier php5.ini? Courez-vous WHM sur le VPS? Cela pourrait aussi l'emporter. – Nic

+0

Je cours WHM, mais j'ai, comme mentionné, spécifiquement mis à jour tous les paramètres pour PHP, Apache, et MySQL pour fonctionner au pic. Oui, php5.ini est également défini. – f8xmulder

Répondre

0

Avez-vous essayé d'exécuter le même code et la même base de données sur un ordinateur local? C'est un bon début. Si le problème persiste, il y a un problème d'environnement en jeu. Si le problème persiste, essayez d'exécuter la même base de données avec une nouvelle copie de Magento (code directement à partir du repo, essentiellement). Si le problème disparaît, vous avez probablement un problème de code. Sinon, la base de données est susceptible de blâmer.

Ensuite, ajoutez un nouveau type de produit et un nouveau produit. Essayez d'ajouter ceux au panier. Utilisez un nouveau client, etc.

Déboguer après cela dépend des problèmes que vous avez trouvés, mais quelque part dans la logique de Magento vous êtes en train de vous trébucher.Je devine que c'est la base de données, puisque Magento dépend de plusieurs choses existant dans la base de données correctement. Passer à travers le code avec un débogueur peut vous montrer où il se retire du processus.

Dites-nous comment ça se passe. :)

+0

Merci pour l'entrée. J'ai fait de nombreux tests différents, y compris ceux que vous avez mentionnés. J'ai fait des tests A/B avec de nouveaux db's, de vieux db's, de nouveaux prods, de nouveaux clients. Le problème semble être dans la base de données. Je n'ai pas essayé le codage - avez-vous des suggestions sur la façon de le faire? J'ai Firebug et ça ne révèle rien de fâcheux. Y a-t-il quelque chose de robuste qui puisse marcher dans Magento? – f8xmulder

+0

xdebug serait la meilleure option, mais à défaut, commencer à ajouter des instructions de débogage dans le code. isolez la ligne de code qui définit le message "ne peut pas ajouter au panier" et utilisez debug_print_backtrace() pour en savoir un peu plus sur ce qui est en train de bombarder. Cela peut vous conduire au bon endroit. –

+0

Je vais installer xdebug en ce moment même. Je vais essayer et voir ce qu'il trouve. Merci pour l'idée. – f8xmulder

0

Je viens de rencontrer ce problème aussi. La solution consistait à désactiver PHP Safe Mode. Cela a immédiatement corrigé le problème pour moi.