我正在使用Laravel 5,PHP 7和Homestead,由于某种原因,当我尝试访问$request->ip()
时,我又回到了192.168.10.1
。但是在我的/etc/hosts
文件中,我有192.168.10.10 homestead.test
。然后,当我var_dump($request);
时,我得到以下信息
...
'HTTP_HOST' => string 'homestead.test' (length=14)
'REDIRECT_STATUS' => string '200' (length=3)
'SERVER_NAME' => string 'homestead.test' (length=14)
'SERVER_PORT' => string '80' (length=2)
'SERVER_ADDR' => string '192.168.10.10' (length=13)
...
'REMOTE_ADDR' => string '192.168.10.1' (length=12)
有人从IP地址修剪最后一个值之前看到过这个吗?
答案 0 :(得分:5)
在您的情况下,$request->ip()
表示REMOTE_ADDR
,即您的浏览器正在使用的IP(192.168.10.1
)。
SERVER_NAME
和SERVER_ADDR
分别是homestead.test
和192.168.10.10
,这是您的Web主机的名称和Web主机的IP。
您计算机的IP之一为192.168.10.1
,您家的IP为192.168.10.10
。因此,当您访问PHP程序时,浏览器正在使用192.168.10.1
连接到宅基地的192.168.10.10
。