xengineer’s diary

結果、メモ的な内容になっています。

PHPのメモリ割り当てエラー

はいねもとです。

今回は、WordPressをいじっていて出たエラー。

バージョンは、こんなん。

  • WP-4.2.2
  • PHP 5.5.38 (cli) (built: Jul 20 2016 16:01:37)

エラーはこんなん。

PHP Fatal error: Allowed memory size of bytes exhausted (tried to allocate XX bytes) in $ROOTDIR/wp/wp-includes/wp-db.php

なんだろーなー、と色々検索して、下記設定値をあげてみたりするも解決せず。

  • WP_MEMORY_LIMIT
  • WP_MAX_MEMORY_LIMIT

php.iniの、memory_limitも、128MB -> 256MBにあげてみたけど解決せず。

なんやねん。と思いつつ調査。

最終、原因は、php-fpm.d/www.confの下記設定。

php_admin_value[memory_limit] = 128M

どうやら、php_admin_valueに、渡してる引数に対応するphpの設定項目を上書きしちゃうらしい。

つまり、これをfpm側に書いてると、php.iniでいくらmemory_limitを設定しても無駄。

なので、ここを256MBにして再起動したら直りましたとさ。

ちゃんちゃん。