ヤマムギ

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を単独でオンオフして確認してみたら、やっぱりそうでした。
オフにしてひとまず元通りです。

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


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

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

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

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

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

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

 - AWS , ,

ad

ad

  関連記事

ヤマムギ vol.7 AWSアカウント作成 & 最初の設定ハンズオン 手順

ヤマムギとは from Mitsuhiro Yamashita 「AWSではじめ …

JAWS FESTA 2019 Sapporo 参加&当日スタッフ&企業サポーターで!

2019年のJAWS FESTA は札幌です! 今回もありがたいことに、所属して …

AWSアカウントルートユーザーのMFAでYubicoセキュリティキーを設定した

先日Yubico セキュリティキーを購入して、USBにささなければならないのがな …

IAMユーザーのマネジメントコンソールログインパスワードを変更してDynamoDBに記録するLambda(Python)

やりたいこと IAMユーザーのマネジメントコンソールへのサインインパスワードを動 …

slackのbotに天気を教えてもらう(Python on AWS Lambda + API Gateway)

slackのbotにAPIの定番ともいえる天気情報を教えてもらいました。 環境は …

Transit GatewayポリシーテーブルでCloud WANのコアネットワークに接続しました

「ポリシーテーブルってなんですか?」のご質問をいただいたので設定してみました。 …

AWS Secrets ManagerのローテーションでLambda関数の管理が必要なくなりました

Amazon RDS と AWS Secrets Manager の統合を発表と …

EC2 プレイスメントグループを試してみました

やったことないのでやってみたやつです。 プレイスメントグループの作成 まず、EC …

AWS CLIでS3マルチパートアップロードを確認

AWS CLI を使用して、Amazon S3 にファイルをマルチパートアップロ …

AWS Lambda KMSを使って環境変数を暗号化、復号化する(Python)

Lambda内で外部APIを使用する場合などをユースケースとして、環境変数をKM …