DRUPAL: фатальная ошибка: допустимая ошибка размера памяти при редактировании определенных существующих страниц

DRUPAL: фатальная ошибка: допустимая ошибка размера памяти при редактировании определенных существующих страниц

14.11.2009 04:07:40 Просмотров 55 Источник

Фатальная ошибка: разрешенный объем памяти 18874368 байт исчерпан (пытался выделить 1481725 байт) в __/public_html/includes/database.Inc на линии 224

У меня эта ошибка возникает в Drupal 6 каждый раз, когда я пытаюсь отредактировать следующие страницы:

Мы находимся на общем хостинге, поэтому у меня нет доступа к php.ini-файл, чтобы выделить больше памяти, однако я уверен, что это не то, что вызывает проблему.

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/1732867/drupal-fatal-error-allowed-memory-size-error-when-editing-specific-existing-pa#comment1612792_1732867
Что заставляет вас думать, что память не вызывает ошибку "из памяти"?
https://stackoverflow.com/questions/1732867/drupal-fatal-error-allowed-memory-size-error-when-editing-specific-existing-pa#comment1612807_1732867
Вы используете CCK? Это случается, чтобы сожрать довольно много памяти, как правило.
https://stackoverflow.com/questions/1732867/drupal-fatal-error-allowed-memory-size-error-when-editing-specific-existing-pa#comment1612827_1732867
Майк: я считаю, что у нас есть другие страницы с гораздо большим содержанием и использованием памяти, которые не вызывают никаких проблем. Возможно, я ошибаюсь. Johannes: мы используем CCK, однако мы не можем отключить это.
https://stackoverflow.com/questions/1732867/drupal-fatal-error-allowed-memory-size-error-when-editing-specific-existing-pa#comment1612894_1732867
@anschauung говорит все существенное ниже, но операция с базой данных, которая съедает 1,4 МБ за один раз, на мой взгляд, немного странная. Возможно, вы захотите исследовать и это.

Ответы - DRUPAL: фатальная ошибка: допустимая ошибка размера памяти при редактировании определенных существующих страниц / DRUPAL: Fatal error: Allowed memory size error when editing specific existing pages

anschauung

14.11.2009 04:45:04

Определенно проблема с памятью - это будет трудно для вас, чтобы запустить сайт Drupal только на 18 мегабайт памяти.

Ваше долгосрочное решение состоит в том, чтобы изменить хосты - есть много хостов, которые позволяют вам настроить php.ini (в пределах допустимого). Bluehost.com это один из примеров.

Возможным краткосрочным решением было бы удаление неиспользуемых модулей из каталога modules. Каждый модуль съедает немного памяти, даже если он отключен.

Такие вещи, как кэширование и отключение statistics, тоже хороши, но они не очень помогут, если вы получаете проблемы с памятью при редактировании основных страниц.

Tim Lytle

14.11.2009 05:13:29

Я не так хорошо знаком с Drupal, но эта страница пытается захватить большой объем данных из базы данных? Что-то вроде SELECT *для всей таблицы? Это может объяснить, почему один вызов пытается выделить так много памяти.

Изменение хостов-это вариант, но на данный момент может быть полезно посмотреть, можно ли что-то сделать, чтобы ограничить данные, запрашиваемые из базы данных.

К сожалению, сообщение об ошибке не очень много, чтобы сказать вам, какой конкретный запрос вызывает проблему - так как код, делающий запрос db, находится в классе библиотеки db. Если вы можете сделать любой вид трассировки стека, это поможет.

Является ответом!
cdonner

14.11.2009 05:20:27

Я нахожусь на общем хосте, а также. Вот это PHP.INI, который я создал в одной из корневых папок домена Drupal:

[PHP]
memory_limit = 40M;
upload_max_filesize = 20M;
post_max_size 20M;
max_execution_time = 200;
max_input_time = 200;

У меня больше нет проблем с глобальными ограничениями. Я не уверен, что хостер может отключить или переопределить локальный PHP.ini-мой не делает, и это должно быть стоит попробовать.

https://stackoverflow.com/questions/1732867/drupal-fatal-error-allowed-memory-size-error-when-editing-specific-existing-pa/1733011#comment1643645_1733011
Спасибо всем за ваши предложения. Этот сделал свое дело. Я не знаю, почему я никогда не пробовал это в первую очередь... Если php.ini-файл не существует, не предполагайте, что он недоступен :(.
codeinthehole

14.11.2009 05:40:27

Вы можете указать ограничение памяти через .реврайт

Попробуйте добавить следующую строку .файл htaccess в корневом каталоге вашего сайта:

php_value memory_limit 32M
https://stackoverflow.com/questions/1732867/drupal-fatal-error-allowed-memory-size-error-when-editing-specific-existing-pa/1733048#comment1614334_1733048
Если поставщик стоит своей соли, это не сработает. :)
https://stackoverflow.com/questions/1732867/drupal-fatal-error-allowed-memory-size-error-when-editing-specific-existing-pa/1733048#comment1649092_1733048
Согласен - это предложение есть во всем интернете, но никогда не видел его работы.
eddy147

14.11.2009 05:30:18

измените настройки.php (обычно в сайтах / по умолчанию) и добавить (или изменить):

ini_set('memory_limit', '96M');

...или как вам нужно.

https://stackoverflow.com/questions/1732867/drupal-fatal-error-allowed-memory-size-error-when-editing-specific-existing-pa/1734372#comment33078440_1734372
Как это связано с другими ответами, такими как изменение php.Ини?
Закрыть X