我想知道这是否正常。
我需要阻止对文件的Web访问,并使其只能从其他php(即:include)中获取
if(strstr($_SERVER['PHP_SELF'], "filename.php")){
header('Location: http://www.website.net');
}
提前致谢
答案 0 :(得分:2)
最常见的方法是在父脚本中定义常量
define('BLA', true);
并检查您的脚本是否存在:
if (!defined('BLA')) {
// redirect here
}
答案 1 :(得分:0)
这很好,但你可以通过使用它而不是手动输入文件名来使它更通用。 $_SERVER["SCRIPT_NAME"]
将返回文件的名称。这样,如果您重命名或复制文件,它仍然受到保护。
您还可以设置文件权限以使文件无法访问,并将其放在siteroot之外以便进行测量。
@zerkms也有一个有趣的建议。