Почему Drupal Page выдает мне фатальную ошибку памяти после перехода на FastCGI с Apache2? - PullRequest
0 голосов
/ 31 июля 2010

Мой сайт работал нормально, пока я не следовал этому руководству, http://www.howtoforge.com/how-to-set-up-apache2-with-mod_fcgid-and-php5-on-ubuntu-9.10 для настройки mod_fcgid и php5.

Мой php.ini в каждом месте имеет ограничение памяти 96 МБ.Главная страница моего сайта (которая называется Панели / Виды) по-прежнему отображается даже после очистки кэша и отключения указанного модуля:

Неустранимая ошибка: допустимый объем памяти 16777216 байт исчерпан (попытка выделить 122880 байт)в /var/www/rvr/sites/all/modules/date/date/date.theme в строке 146

Однако другие части моего сайта по-прежнему работают, в первую очередь модуль Drupal Tweaks, в котором говорится о моемограничение памяти составляет 96 МБ.Есть также более ресурсоемкие части сайта, которые все еще работают.Я поэкспериментировал с модулем Boost, прежде чем приступить к описанному выше руководству, но он отключен вместе со многими модулями, просто чтобы попытаться вернуть его в оперативное состояние.

У меня есть эта настройка LAMP на VPS-слайс-хосте с оперативной памятью 386 МБ, используяUbuntu 10.04.

Когда я запускаю phpinfo () в корне drupal, он сообщает:

System  Linux Rogueroses 2.6.32.12-rscloud #26 SMP Mon May 17 12:35:34 UTC 2010 x86_64
    Build Date  May 21 2010 06:23:44
    Server API  CGI/FastCGI
    Virtual Directory Support   disabled
    Configuration File (php.ini) Path   /etc/php5/cgi
    Loaded Configuration File   /etc/php5/cgi/php.ini
    Scan this dir for additional .ini files /etc/php5/cgi/conf.d
    additional .ini files parsed    /etc/php5/cgi/conf.d/apc.ini, /etc/php5/cgi/conf.d/gd.ini, /etc/php5/cgi/conf.d/mcrypt.ini, /etc/php5/cgi/conf.d/mysql.ini, /etc/php5/cgi/conf.d/mysqli.ini, /etc/php5/cgi/conf.d/pdo.ini, /etc/php5/cgi/conf.d/pdo_mysql.ini
    PHP API 20041225
    PHP Extension   20060613
    Zend Extension  220060519
    Debug Build no
    Thread Safety   disabled
    Zend Memory Manager enabled
    IPv6 Support    enabled
    Registered PHP Streams  https, ftps, compress.zlib, compress.bzip2, php, file, data, http, ftp, zip
    Registered Stream Socket Transports tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
    Registered Stream Filters   zlib.*, bzip2.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed

И далее вниз

max_execution_time  30  30
max_file_uploads    50  50
max_input_nesting_level 64  64
max_input_time  60  60
memory_limit    96M 96M

Когда я загружаюСтраница Drupal, верхняя команда дает это:

 6944 rvr       20   0  185m  42m  31m D    3 11.4   0:01.10 php                     
 2295 mysql     20   0  228m  24m 2128 S    0  6.7   0:57.68 mysqld     

Ответы [ 2 ]

1 голос
/ 01 августа 2010

96 МБ мало для сайта с панелями и многими другими модулями. Вы должны увеличить его до 150-200. Это должно дать вам больше возможностей для использования расширенных модулей, требующих памяти.

0 голосов
/ 01 августа 2010

Несмотря на то, что 96 МБ для обычного сайта повторяется, его не видно при запуске многих модулей в Drupal.

Однако ошибка указывает на то, что она превысила 16 МБ, поэтому, очевидно, значение, указанное в вашем phpinfo (), загружается неправильно.

Лучшее место для установки значений, таких как ограничения памяти, находится в самой конфигурации vhost. Второе лучшее место - это .htaccess Третье лучшее место в settings.php.

Я предполагаю, что у вас есть низкое значение (16M) в вашем файле settings.php / или / in .htaccess. Лучше всего установить их в конфиге vhost и удалить их из других мест.

Вы можете увидеть фактические значения, доступные в Drupal, с devel.module, который имеет простую страницу php-info (). Кроме того, вы можете создать узел с PHP-разбором в качестве фильтра и вставить туда phpinfo (). Это покажет вам фактические значения, доступные в Drupal.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...