mod_rewrite と %2F
2004-9-1 18:29
Apache の mod_rewrite を使っているときに、正規表現は正しいのに、どうしてもうまく書き換えルールが適用されず、404 エラーになってしまう現象に悩んでいました。どうやら$2F の罠のようです。
REQUEST_URI のパスの部分に「%2F」が含まれると mod_rewrite は動作しない。
まさにこれが原因だったようです。回避方法として、
Apache 2.0.46 and later より allowEncodedSlashes Directive が追加され、 ‘%2F’がURIに含まれていても、 これを on にすれば 404 Not Found を返さなくなった。
というのが示されていましたが、作業していた Apache は諸事情により最新版ではないので、パッチをバックポートしなければなりません。面倒くさいので、断念しました。しかし、これははまりますね。
コメントはまだありません
No comments yet.
Sorry, the comment form is closed at this time.