Php 是否有方法检测连接是否通过CloudFlare?

Php 是否有方法检测连接是否通过CloudFlare?,php,security,Php,Security,我想知道是否应该将带有$\u SERVER的变量视为安全变量,或者是否应该在使用前对其进行过滤。我正在尝试检测连接是否来自CloudFlare。在此基础上,我选择了获取客户IP地址的方法。当连接来自CloudFlare$\u服务器[“HTTP\u CF\u CONNECTING\u IP”]时,应存在该服务器,其内容应为客户端的IP 根据$\u服务器[“HTTP\u CF\u CONNECTING\u IP”]可以由用户控制,因此通过这种方式获得的IP可以被欺骗。 $ip=isset($\u服务

我想知道是否应该将带有
$\u SERVER
的变量视为安全变量,或者是否应该在使用前对其进行过滤。我正在尝试检测连接是否来自CloudFlare。在此基础上,我选择了获取客户IP地址的方法。当连接来自CloudFlare
$\u服务器[“HTTP\u CF\u CONNECTING\u IP”]
时,应存在该服务器,其内容应为客户端的IP

根据
$\u服务器[“HTTP\u CF\u CONNECTING\u IP”]
可以由用户控制,因此通过这种方式获得的IP可以被欺骗。
$ip=isset($\u服务器[“HTTP\u-CF\u-CONNECTING\u-ip”])?$\u服务器[“HTTP\u-CF\u-CONNECTING\u-ip”]:$\u服务器[“REMOTE\u-ADDR”]


这个问题有什么好的解决方案吗?

没有针对
$\u服务器的数据被明确设计为SQL源代码

$\u服务器
中的某些数据直接从HTTP请求复制(即,是用户输入)


应将其视为来自系统外部的任何其他输入,并应应用适当的转义/筛选。

没有明确设计将
$\u服务器的数据视为SQL源代码

$\u服务器
中的某些数据直接从HTTP请求复制(即,是用户输入)


应将其视为来自系统外部的任何其他输入,并应用适当的转义/过滤。

否,它们不安全。同样相关的否,它们不安全。同样相关的,即使它们是安全的,也应进行转义。安全总比后悔好。即使他们是安全的,逃跑还是应该做的。安全总比后悔好。