Php 是否存在确保POST数据来自特定主机的方法?
我有一个PHP脚本,其中POST数据来自已知源非常重要。从“相似的标题”判断,没有真正的方法可以做到这一点,因为标题可能会被欺骗。Php 是否存在确保POST数据来自特定主机的方法?,php,Php,我有一个PHP脚本,其中POST数据来自已知源非常重要。从“相似的标题”判断,没有真正的方法可以做到这一点,因为标题可能会被欺骗。服务器地址也可以被欺骗吗?这是否可以用作数据发布来源的某种验证?忽略PHP,依赖请求似乎来自的IP地址是一种相当弱的安全形式。您应该考虑使用HTTPS,并将每个客户端证书分发给每个受信任的源。 SSL一开始可能会让人望而生畏,但您在这里需要的一点都不复杂,您将获得学习它的宝贵技能 if($_SERVER['REMOTE_ADDR'] != '127.0.0.10')
服务器地址也可以被欺骗吗?这是否可以用作数据发布来源的某种验证?忽略PHP,依赖请求似乎来自的IP地址是一种相当弱的安全形式。您应该考虑使用HTTPS,并将每个客户端证书分发给每个受信任的源。
SSL一开始可能会让人望而生畏,但您在这里需要的一点都不复杂,您将获得学习它的宝贵技能
if($_SERVER['REMOTE_ADDR'] != '127.0.0.10') {
die('Not allowed!);
}
// rest of script...
$\u服务器['REMOTE\u ADDR']不是来自客户端提供的头文件(它由apache提供,并从网络堆栈中生成),因此不能被欺骗 可信源是否碰巧位于同一网络中?为什么不检查$_服务器['HTTP\u REFERER']?也许您可以通过获取REFERER、发送回令牌开始此过程,源使用只有我的脚本和源才能知道的salt对其进行编码。他们对它进行编码,如果它没有正确解码,你可以放心地说它不是正确的主机