先日お客様のサイトにてある特定のページエラーを吐き出しておりました。
「Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20 bytes) in /export/sd207/www/jp/r/e/gmoserver/8/3/***/***.com/w***l/wp-includes/taxonomy.php on line 1532」と言った内容でした。
色々調べていましたらどうやらこちらはメモリが足りなくて処理できませんよと言うものでした。
そこでまずドメインのルートディレクトリに「phpinfo.php」と言うファイルを作成しました。
これはphpがどのような設定になっているか確認するためのファイルを設置するためです。
テキストエディタなどで上記のファイル名のファイルを用意します。
中に記述するのは
<?php phpinfo();
になります。
これを先ほどのルートディレクト直下にアップロードします。(FTP)
そしてブラウザにて
http://ドメイン/phpinfo.php
を表示させます。
その表示されたたくさんのデータの中より「Core」の題名を探します
Coreの中の
memory_limit
と書かれたところを確認すると128M になっていました。
memory_limit 128M
とりあえずそれでは足りないようなので倍の256Mに変更したいと思います。
次に同じくルートディレクトリに設置すべく「php.ini」をテキストエディタで作成します。
中に記述するのは
memory_limit = 256M
これだけです。
これをFTPでアップロードします。
そしてhttp://ドメイン/phpinfo.php を表示させると
memory_limit 256M に変更されているのが確認できます。
サイトを確認すると正常に表示されるようになりました。
お名前.comでは独自にphp.iniを作成設置する事を許可されています。
これはヘルプにも記載されておりました。
優先順位はルートディレクトリに設置したものが優先されるので有効になります。
ただしお名前.comでは動作保証もサポートもしないと書かれていますのでご自身の判断になります。
他にも.htaccessにメモリサイズ設定を記述する方法などもあるようですが、やってみたところエラーになってしまいました。
場所が悪いのかと思ってテーマのルートに入れたらスタイルが崩れました。
理由は不明です。
色々なやり方はあるのでしょうが、使っている環境によって違うのでしょうね。
参考サイト:ありがとうございました
http://webtech-walker.com/archive/2007/03/05152445.html
https://yyengine.jp/blog/php/fatal-error-allowed-memory-size/
https://webkikaku.co.jp/blog/wordpress/wordpressuploadfilesize/
もしお役に立てたり、クスッとして頂いたりご共感頂けた際にはポチっとして頂けますと記事への情熱になったりしなかったり。。。