HTTP REFERER足够安全吗?

sai*_*web 0 php http

我有一个PHP文件,其中包含我网站的一些重要数据.我在该文件中设置了以下编写的HTTP REFERER脚本.目前,只有从我的网站后端的特定页面(受密码保护)重定向时才能访问它.假设无法通过任何其他方式访问此文件是否安全?

<?php
    if ($_SERVER['HTTP_REFERER'] == "http://yoursite.com/IMPORTANT_FILE.php") {
        // continue
    } else {
        header("Location: http://yoursite.com/");
        exit(); //Stop running the script
        // go to form page again.
    }
?>
Run Code Online (Sandbox Code Playgroud)

Joh*_*nde 6

编号$_SERVER['HTTP_REFERER'] 可以是欺骗性的,因此不能依赖于安全性或准确性.这个镀铬扩展使得新手做起来很简单.

更好的方法是在用户尝试访问受保护的文件之前对其进行身份验证.只有在通过此身份验证后,他们才能访问它们 请参阅此答案以获取示例.