2010-09-26 3 views
3

Ah je suis désespéré, j'aide tellement quelqu'un peut m'aider!Wordpress - Essayer d'éditer le message - "Erreur fatale: Mémoire insuffisante" ... mais la limite de mémoire est élevée

J'ai un domaine: example.com. Il existe diverses installations WP pour différentes langues, par ex./fr /,/fr /. J'ai dupliqué la langue anglaise/fr/pour faire ces autres installations en langue étrangère. L'installation originale/en/fonctionne toujours très bien.

Les autres installations fonctionnent sur le front-end, il semble, cependant, lorsque je tente de modifier une page, par exemple, je reçois cette erreur, lors de la mise à jour/sauvegarde/présentation:

Fatal error: Out of memory (allocated 28835840) (tried to allocate 35 bytes) in /homepages/../wp-includes/wp-db.php on line 1371

Cela ne se produit pas avec l'installation en anglais (/ en /), et ne se produit pas lorsque je change d'autres choses dans l'autre blog. Par exemple, j'ai réussi à changer le nom de blog, des widgets, des menus, etc.

J'ai installé le plugin Booster mémoire si PHP a maintenant 256M travailler avec, mais cela semble être à court de mémoire beaucoup plus tôt.

Est-ce que quelqu'un sait comment vous aider? :(

apprécie énormément à l'avance !!!

+0

avez-vous vérifié que memory_limit a été réellement défini avec un appel à phpinfo()? –

+0

ouais, ont vérifié ... pas de joie ... je pense que ce doit être un redherring, mais bonté ce qui le cause ... pas un plugin, thème ... je peux changer les entrées dans la base de données avec phpmyadmin .. . :( – harryfear

Répondre

1

Peut-être une question stupide, mais avez-vous redémarrez votre serveur Web après avoir réglé la limite de mémoire?

Sinon, peut-être il y a une dérogation pour la limite de mémoire dans un fichier PHP (ini_set('memory_limit', ...)) quelque part ou dans un fichier de configuration d'Apache (php_value/php_admin_value).

Vous pouvez essayer d'imprimer la limite de mémoire efficace en insérant par exemple un

echo '<h1>LIMIT: '.ini_get('memory_limit').'</h1>'; 

juste avant la ligne d'erreur (si l'erreur se reproduit au même emplacement) et rechargez la page incriminée pour voir si votre limite correspond à ce que vous pensez (sauvegardez le fichier d'origine avant de le faire).

+0

Il s'avère que mon hôte atteint un maximum de 30M, même si vous demandez une augmentation de n'importe quel code.Il n'est pas logique que seulement quelques installations jettent l'erreur, cependant ...? – harryfear

+0

Je ne sais pas vraiment, mais il se pourrait qu'ils diffèrent dans les exigences de mémoire en raison de messages localisés ou quelque chose ... par exemple. les installations non anglaises peuvent contenir des messages non anglais et anglais (en tant que langue de secours) chargés ou quelque chose de similaire. – Archimedix

+0

Quelle limite de mémoire votre script imprime-t-il si vous incluez l'instruction 'echo' ci-dessus? Et l'erreur est-elle toujours reproductible sur vos installations non-anglaises et jamais sur l'anglais WordPress? – Archimedix

1

Cette erreur peut être une fraude, c'est-à-dire que le problème est lié à la mémoire même si ce n'est pas le cas.

+0

correct, toujours le cas avec les systèmes et les cadres empaquetés – Stewie

+0

Toutes les idées que la cause réelle pourrait être, frère? – harryfear

+0

D'accord, cela n'a rien à voir avec la mémoire, mais c'est certainement un hareng rouge ... – harryfear

1

Le problème est que vous exécutez plusieurs installations WP. Chacun prend au moins 30 Mo, et vous en manquez, en particulier. Si votre hôte est bon marché et atteint un maximum de 30 Meg. Soit exécuter l'un d'installation avec le impletentation approprié pour plusieurs langues

http://codex.wordpress.org/Multilingual_WordPress

http://wpml.org/

ou trouver un nouvel hébergeur.

+0

Mais les différentes installations ne devraient-elles pas être indépendantes les unes des autres? Je veux dire, le WordPress non-anglais ne charge pas le WordPress anglais, et une limite partagée n'aurait un effet que s'il y avait plusieurs demandes simultanées, et encore, cela affecterait le WordPress anglais, pas seulement les autres. – Archimedix

+1

"Mais les différentes installations ne devraient-elles pas être indépendantes les unes des autres?" C'est exactement le problème - ils le sont. Ils utilisent tous de la mémoire, exécutent tous cron, utilisent tous les ressources httpd, même lorsqu'ils sont inactifs et qu'aucune requête http n'est en cours. Et ce compte d'hébergement est très limité pour commencer. – markratledge

+0

Habituellement, la limite de mémoire en PHP est par script, et lorsqu'une seule requête est faite, seule cette requête devrait consommer de la mémoire (c'est-à-dire RAM, par opposition à l'espace disque). Par conséquent, cela ne devrait pas poser de problème si vous exécutez une ou plusieurs installations WordPress tant que la limite de mémoire non-PHP dure est de 30 Mo * et que * plusieurs demandes sont exécutées en même temps. Cela dit, la limite de mémoire de 256M PHP devrait suffire pour la plupart des scripts PHP (comme c'est le cas par script), cependant une limite de 256 Mo de mémoire système peut être suffisante selon le nombre de scripts PHP en cours d'exécution. – Archimedix

Questions connexes