我正在用 php 做一个简单的事情,我想知道如何测试变量 $path 是否包含以下结构../
所以我将在我的 url 中简单地包含一个 ?path=somepath 结构,如果有人输入 ../它允许他向上移动一个目录。我当然知道那不是最好的解决方案,但是对于我的小东西来说,如果我只是测试 $path 变量中的字符串“../”就足够了。如果是这样就死了();
我不确定什么是最好的测试方法!
问候马特
最佳答案
除此之外,您还可以调用 realpath()
并检查它应该位于的路径是否是该路径的前缀。
更好的是,为什么不保留一个白名单并拒绝其中没有的任何内容?
关于PHP:防止文件夹被黑客攻击——如果路径中有 ../?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3342306/