参见英文答案 >
How reliable is HTTP_REFERER? 1个
我听说它一遍又一遍地说你永远不应该使用$_SERVER [‘HTTP_REFERER’].为什么?
我理解这可以由用户容易地操纵,即,该变量可以设置为用户想要的任何东西.因此,我完全理解为什么不应该从安全的角度来信任它.但是,例如,只有authed用户才能查看的所有页面都会重新检查用户是否已经过操作,依赖此变量的危险在哪里?
最佳答案 它可以是一个有用的变量,但不应该依赖它.
首先,它并不总是提供(浏览器可以设置为不提供引用),因此如果没有提供依赖它的代码可能不起作用.
其次,这是一种罕见的情况,即使登录用户,良好的安全性也会信任 – 仅仅因为他们登录并不意味着他们没有尝试他们不应该做的事情.
它可以很好地使用它,但不要假设其真实……