После установки eAccelerator php выдает ошибку

После установки eAccelerator на FreeBSD 6.2 некоторые php-скрипты стали выдавать ошибку:

PHP Fatal error: Out of memory (allocated 13369344) (tried to allocate 3145968 bytes) …

PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0

PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0

Решение вопроса  — уменьшаем значение параметра “eaccelerator.shm_size”

Он был установлен в 128 Мб, устанавливаем на 32 Мб  и все заработало. В FreeBSD максимальный размер совместно используемой (shared) памяти не задается напрямую, и  его нельзя просто увеличить.

Читать далее

Значение SHMMAX вычисляется из параметров SHMMAXPGS и PGSIZE, по формуле :

SHMMAX=”(SHMMAXPGS*PAGE_SIZE+1)”

 

Посмотреть текущее значение параметра SHMMAX на Вашей системе можно используя команду ipcs.

serv# ipcs -M

shminfo:

shmmax: 33554432 (max shared memory segment size)

shmmin: 1 (min shared memory segment size)

shmmni: 192 (max number of shared memory identifiers)

shmseg: 128 (max shared memory segments per process)

shmall: 8192 (max amount of shared memory in pages)

 

Решение:

Параметр eaccelerator.shm_size в файле php.ini не должен превышать параметр SHMMAX Вашей ОС.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *