我正在尝试使用Laravel 5.2获取客户端IP
这不是敏感信息,所以我并不关心IP欺骗。
我在我的模型中尝试过这种脚本:
if (isset($_SERVER['HTTP_X_FORWARDED_FOR']) && $_SERVER['HTTP_X_FORWARDED_FOR']) {
$clientIpAddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$clientIpAddress = $_SERVER['REMOTE_ADDR'];
}
但是当我运行php artisan migrate时,我收到错误
Undefined index: HTTP_X_FORWARDED_FOR
或
Undefined index: REMOTE_ADDR
但是当我跑步时:
<?php dd($_SERVER); ?>
我得到了
"SERVER_ADDR" => "10.0.1.194"
"REMOTE_PORT" => "38151"
"REMOTE_ADDR" => "201.141.124.254"
我不明白!!!
答案 0 :(得分:0)
这只是因为您在CLI中运行它(使用控制台来运行迁移)。
CLI模式下的PHP有另一个$ _SERVER且没有REMOTE_ADDR键。