PHP を実行している 2 つの Apache サーバーがあります。クエリ文字列でスラッシュを受け入れ、予想される方法で PHP に渡します。次に例を示します。
http://server/index.php?url=http://foo.bar
動作し、PHP では次の式が true になります。
$_REQUEST['url'] == "http://foo.bar"
しかし、他のApache サーバーでは、同じ URL は403 Forbidden
エラーになります。クエリ文字列が適切に URL エスケープされている場合 (つまり、%2F
スラッシュの代わりに使用されている場合)、すべてが機能することに注意してください。
これを引き起こす Apache または PHP の構成には明らかに違いがありますが、何が原因なのかわかりません!
どちらの場合も、この形式の URL を拒否するのではなく、受け入れる必要があります。