ヤマムギ

growing hard days.

*

WordPressで画像アップロードができなくなった(AWS WAFでブロックしていた)

   

WordPressで画像がアップロードできなくなりました。
こんなメッセージです。
「サーバーが画像を処理できません。このエラーは、サーバーが忙しいか、タスクを完了するために十分なリソースがない場合に発生します。小さな画像をアップロードすれば解決するかもしれません。推奨する最大サイズは2560ピクセルです。」

「ある日突然何もしてないのに」などと言うと怒られちゃいますので、原因を調査しました。

やったことを思い出す

アップロードできていたときから、できなくなるまでの時間はほぼ24時間です。

9/27 20時頃まではできていて、9/28 20時頃にできないことを確認しました。

何もしていないはずですが念のため、EC2オートスケーリングな構成で、AMIからEC2インスタンスを作成し直しました。
データベースはRDSインスタンスのポイントインタイムリカバリで昨日のできていた頃のデータベースを復元して接続し直しました。

まだ、ダメです。

画像をS3にオフロードするためにMedia Cloudプラグインを使ってるのでオフにして試してみました。

ダメです。

キャッシュやクッキーの影響がないようにブラウザ新規ユーザーを作って試してみました。

ダメです。

メッセージにあるとおり、小さい画像をアップロードしてみました。

28kb以下はアップロードできました。

ここでわからなくなってギブアップです。

寝ました。

翌朝、会社までウォーキングしながら思い出しました。

「検証目的でWAFのマネージドルール追加したんだった」

CloudWatchメトリクスでブロックされているルールを確認しました。

これっぽい。

該当のCrossSiteScripting_Blockを単独でオンオフして確認してみたら、やっぱりそうでした。
オフにしてひとまず元通りです。

すべてのことには理由がありますね。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , ,

ad

ad

  関連記事

AWS Service CatalogポートフォリオをOrganizations組織で共有する

AWS Service Catalogチュートリアルで作成したポートフォリオのO …

AtomエディタでEC2のファイルを直接編集する

Webページを編集していてEC2のファイルをvimエディタでさわったりしています …

Amazon SageMakerプロジェクトを使用してMLパイプラインを構築

SageMakerプロジェクトの作成 SageMaker Studioの左ナビゲ …

S3 Intelligent-Tieringで高頻度階層(FREQUENT)に戻る「アクセス」にS3 SelectとGlueクローラーが該当するのか確認してみました

ユーザーガイドのS3 Intelligent-Tiering のしくみには、「低 …

ChatGPT APIをTeamsボットから使いました(AWS Lambda(Python) + API Gateway)

ChatGPT APIが有償で利用可能になったので、会社のTeamsボットに実装 …

ブログのアーキテクチャをコストベースで見直しました

当ブログはAWSで構築しています。 アーキテクチャをコストを最重視して見直しまし …

VyOSでssm-userからvyosユーザーに切り替える

EC2 VyOSで/etc/resolv.confを設定しました VyOSにSS …

re:Invent 徒歩記(シアトルも)

このブログは、AWS re:invent 2018 Advent Calenda …

ヤマムギvol.23 Amazon RDS for MySQLとAmazon Aurora Serverlessの起動のデモをしました

ゴールデンウィーク毎朝デモ勉強会は終わったのですが、土曜日にやれるときがあれば、 …

Cloud9環境を共有した際の環境認証

Cloud9を環境を構築したIAMユーザー以外に共有したとき、その環境から実行す …