【发布时间】:2022-01-12 18:35:25
【问题描述】:
我最近将一个 Laravel 应用程序从服务器移到了 Vapor。此应用依赖于使用 Request::ip() 记录请求 IP 地址,但自从切换到 Vapor 后,所有 IP 都记录为 127.0.0.1。
我查看了 https://laravel.com/docs/5.6/requests#configuring-trusted-proxies 的受信任代理文档,但我们没有设置负载均衡器,因此该解决方案似乎不相关。我怀疑这个 IP 地址来自 Amazon API Gateway。
我们如何在 Vapor 上部署的应用中获取传入请求的实际客户端 IP?
我们如何使用 IP 地址的最小示例如下:
public function store(Request $request)
{
$workerIP = $request->ip();
$worker = Worker::create(['ip_address' => $workerIP]);
return view('workers.show')->withWorker($worker);
}
【问题讨论】:
-
嗨!我认为您标记了错误的 Vapor。您标记的是 Swift 框架 vapor.codes
-
@TWOF 真的有 Laravel Vapor 标签吗?
-
@Nathan 现在有。
标签: laravel aws-lambda laravel-vapor