关于使用PHP检查服务器环境,我引用了this question。在检查服务器是在生产环境还是在开发环境中时,为什么使用REMOTE_ADDR
而不是SERVER_ADDR
?抱歉,我在这里感到困惑,因为我一直认为REMOTE_ADDR
是指客户端的IP地址。使用SERVER_ADDR
会更好吗?还是有其他理由选择REMOTE_ADDR
?
答案 0 :(得分:2)
SERVER_ADDR
返回当前脚本正在执行的服务器的IP地址。REMOTE_ADDR
返回用户正在查看当前页面的IP地址。假设您的服务器上正在运行以下脚本..
<?php
echo $_SERVER['SERVER_ADDR'];
echo $_SERVER['REMOTE_ADDR'];
第一行打印服务器的IP地址(除非您将脚本移动到其他服务器,否则不会更改)。第二行打印当前正在查看此页面的用户的IP地址。(这将针对从不同PC连接的不同用户进行更改)
答案 1 :(得分:0)
这很简单。您提到的问题中的一个答案建议查看客户端的IP的原因是,如果客户端正在从127.0.0.1
访问以确定服务器是否处于开发状态或prod是没有人将在生产服务器上从127.0.0.1
访问。
127.0.0.1是localhost,如果我作为客户端具有IP 127.0.0.1我' 从网站运行的机器访问,因此我不是外部访客。
这意味着我在开发过程中可以在本地计算机上安装服务器。