私はしばらくの間この機能を持っていました:
function fixLink($url){
return preg_replace('@/[^/]+/\.\./@','/',$url);
}
そして、それは次のように変換するのに驚異的に機能しました:
http://domain.com/page/../index.html
にhttp://domain.com/index.html
、最近私はそれを使用しなければなりませんでした:
http://domain.com/../index.html
そして結果はhttp://index.html
この場合、修復されたリンクを次のように出力するようにドメイン名を保護するにはどうすればよいhttp://domain.com/index.html
ですか?
問題に取り組む方法についてのアイデアを探している場合は、コードを使いすぎないでください。