メモリスペックの低いテストサーバーに移植したらエラーに。。
とあるサイトの検証用に、テストサーバーを構築し ファイル・DB等を移植し 環境を整備した。
そして、いざ 当該サイトを表示してみると、、DBから読み込んで表示する動的コンテンツが表示エラーになっていた。。。
「PHP Fatal error: Allowed memory size of xxxx bytes exhausted」エラー
エラーログを確認したら「PHP Fatal error: Allowed memory size of xxxx bytes exhausted」エラーが出ていた。
本番サーバーと比べ、テストサーバーは(PHP、mysql等のバージョンは同じものの)CPU、メモリ等は低スペックなため、メモリが使い果たされてしまったようだ。。
phpinfo.php で見てみると、「memory_limit」の値は「64M」しかない。。
「memory_limit」の値を変更する方法
※今回は、下記「■2」の方法で対処した。
■1.「php.ini」にメモリーサイズを指定
php.ini ファイルに、以下の記述を追記
—–
memory_limit = 512M
—–
これをアップしてサーバー再起動。
■2.「.htaccess」にメモリーサイズを指定
参考:https://faq.zenlogic.jp/faqs/FAQ01187
.htaccess ファイルに、以下の記述を追記
—–
php_value memory_limit 512M
—–
phpinfo.phpで確認すると、上記■1ではmemory_limit値は変わらなかったが、■2では「512M」に変わっていた!
そして、この状態で改めてサイト表示すると、エラーなく無事表示された♪
ホームページ制作のこと、ホームページの運営でわからないことや困っていることがありましたら、「株式会社アットライズ」までお気軽にご相談ください。
株式会社アットライズのホームページはこちら