PHPフレームワークのCakePHPやCodeIgniterで作っているサイトでいつの間にかに
下記のエラーが大量に表示されていました。
Unable to allocate memory for pool.
色々検索してみると、APCという拡張モジュールのバグみたいです。
PECL APCのエラー(Unable to allocate memory for pool.)が出た時の対処方法をメモします。
下記のサイトを参考にさせていただきました。
PECL apcのエラー Unable to allocate memory for pool.
■ APCのエラー対処方法
サーバにSSHでログインし、「/etc/php.d/apc.ini」ファイルを修正します。
修正内容は下記のように変更します
apc.mmap_file_mask=/tmp/apc.XXXXX
↓(変更します)
apc.mmap_file_mask=/dev/zero
変更を保存したら、httpdをrestartします。
/etc/init.d/httpd restart
再起動後、サイトを確認するとエラーの表示が消えて正常に表示されました。
■ APC(Alternative PHP Cache)
PHPの中間コードのキャッシュや最適化を行い、PHPを高速化する拡張モジュールです。