サーバーの負荷が高いか十分なリソースがないため画像の後処理に失敗しました。

WordPress

WordPressで、画像のアップロード時にエラーが発生する事象がありました。

サーバーの負荷が高いか十分なリソースがないため画像の後処理に失敗しました。もっと小さな画像をアップロードしてみてください。推奨する最大サイズは2500ピクセルです。

アップに使用している画像は、1000pxもないので、確実に最大サイズの部分には引っかかっていません。
発生する再現性もバラバラで、別環境では一度も発生していなかったりします。

ググっても大体のサイトは、WordPressのログインし直しや ブラウザ、PCの再起動という記事ばかりです。
https://www.google.com/search?q=%E3%82%B5%E3%83%BC%E3%83%…

確かにログインし直せば、アップロード出来るようになるのですが、そもそもの根本原因は???
対処療法だけで、原因に言及している方を見つけることが出来ませんでした。

スポンサーリンク

原因の解析

そこで、エラー文をWordPress本体に検索かけたところ、
/wp-content/languages/ja.po 2131行目

#: wp-includes/script-loader.php:877
msgid "Post-processing of the image failed likely because the server is busy or does not have enough resources. Uploading a smaller image may help. Suggested maximum size is 2500 pixels."
msgstr "サーバーの負荷が高いか十分なリソースがないため画像の後処理に失敗しました。もっと小さな画像をアップロードしてみてください。推奨する最大サイズは2500ピクセルです。"

に、翻訳定義されていることが分かりました。

次に コメントに書かれている wp-includes/script-loader.php:877 を確認し、エラー文の定義されている値を確認します。

'http_error_image'          => __( 'Post-processing of the image failed likely because the server is busy or does not have enough resources. Uploading a smaller image may help. Suggested maximum size is 2500 pixels.' ),

http_error_image」を再度検索を行い、下記2ファイルのJSで使用されていることが分かりました。
/wp-includes/js/plupload/handlers.js
/wp-includes/js/plupload/wp-plupload.js

wpQueueError( pluploadL10n.http_error_image );

handlers.js 440行目の使用されている上記コードを再度Google検索にかけたところ、海外サイトで問題に言及されている方がいました。
https://www.igoroseledko.com/wordpress-post-processing-of-the-image-failed/

直訳になりますが、

この特定のWordPressの問題は、バージョン5.3で発生し、解消することを拒否しています。
ただし、ここでの問題はWordPressではなく、ApacheModSecurityにあります。
mod_security.confファイルの「SecRuleRemoveById 200003」セクションの最後に </IfModule> を追加する

WordPress: Post-processing of the image failed By Igor

共有レンタルサーバでApacheの設定が触れなかったり、そもそも mod_security がインストールされていなかったりと 環境によってはこの原因でない可能性もありますが、原因特定の助力になれば幸いです。

その他参考サイト

その他、下記サイトなども参考になるかもしれません。

今回の確認バージョン

・WordPress Ver:5.7
・PHP Ver:7.4.16

コメント

スポンサーリンク
タイトルとURLをコピーしました