以下の内容はhttps://www.na3.jp/entry/20080209/p2より取得しました。


Apacheでパラメータに「%2F」(/の符号化文字列)が含まれていると404(Not Found)が返される

社内のサービスでは、フロントエンドにリバースプロキシ兼ロードバランサ用途として、Apache2.2を使っていることは、たまにちょくちょく書いている通りですが、そのバックエンドにいるアプリの開発メンバーにURL文字列をエンコードすると404エラー(Not Found)が返されるようになったと相談を受けました。


正直、その場で原因がわからなかったので、色々調べ始めると、
Apacheでは、AllowEncodedSlashesディレクティブっつーのがあって、公式ドキュメントから引用すると、

AllowEncodedSlashes ディレクティブは符号化されたパス分離文字
(/ は %2F、さらにシステムによっては \ に対応する %5C)が存在する
URLの使用を許可するかどうかを決定します。通常はそのようなURLは
404 (Not found) エラーで拒否されます。

だそうな。


ということで、
フロントのApacheで部分的に%2Fを許可する設定をしました。
といっても、

AllowEncodedSlashes On


の1行を特定部分に書いただけなんだけど。
そんな感じで、他の部分への影響が無いかどうかを確認してもらっています。




以上の内容はhttps://www.na3.jp/entry/20080209/p2より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14