加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 自动检测内部/外部开发环境

发布时间:2020-12-13 18:26:44 所属栏目:PHP教程 来源:网络整理
导读:我们使用以下函数自动检测我们是在机器内部还是在实时服务器上,然后为各种组件选择适当的配置: function devIsLocal(){ $res=false; $http_host=$_SERVER['HTTP_HOST']; if($http_host=='localhost')$res=true; if($http_host=='127.0.0.1')$res=true; if(s
我们使用以下函数自动检测我们是在机器内部还是在实时服务器上,然后为各种组件选择适当的配置:
function devIsLocal(){

    $res=false;

    $http_host=$_SERVER['HTTP_HOST'];

    if($http_host=='localhost')$res=true;
    if($http_host=='127.0.0.1')$res=true;
    if(substr($http_host,-4)=='.lan')$res=true;
    if(strpos($http_host,'.')===false)$res=true;

    return($res);

}

正如您所看到的,它只依赖于HTTP_HOST值.

当然,如果您在本地使用某种虚拟主机,例如example.com,那么该功能将被欺骗.

有没有其他方法来欺骗这个功能?还有哪些其他变量/地方可以用来确定我们的位置?

'127.0.0.1' == $_SERVER["REMOTE_ADDR"]

在您的实时系统上永远不会评估为TRUE.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读