問題は、mod_encoding が最初に URL を処理しており、PHP がそれを再度解決したことです。
たとえば、
x.php?s=%2B/+/
$_GET['s'] が取得するものは次のとおりです。 is
/ /
urlencode(" ") = +
urlencode("+") = %2B
つまり、この URL は 2 回デコードされています
1 回目は
urldecode ( "%2B/+/") = +/ /
urldecode( "+/ /") = / /
解決策
httpd.conf を変更し、
EncodingEngine on
この設定を必要な VisualHost に移動します。これは php スクリプトと共存できません。