【问题标题】:Laravel: customize auth session data (get the correct ip address)Laravel:自定义身份验证会话数据(获取正确的 ip 地址)
【发布时间】:2022-11-10 05:28:16
【问题描述】:

我的应用程序托管在 AWS Fargate 上,位于负载均衡器后面。所有传入请求都具有此负载均衡器的 IP。它将原始 IP 存储在“X-Forwarded-For”标头中。 Laravel 可以轻松地检索它。

我正在使用数据库驱动程序进行身份验证会话,我注意到它存储了 IP 地址。如果那个 IP 地址是正确的,它对我来说将非常有用。

所以问题是:如何自定义管理会话的代码,而不是存储request()->ip(),而是存储request()->header('X-Forwarded-For')

谢谢

【问题讨论】:

  • 只是为了检查:如果我从当前的浏览器(在工作中)复制我的 cookie,并将它们粘贴到我的远程 pc(在家里),它会让我登录。所以对我来说,存储什么 ip 地址并不重要在会话中。我确实在vendor/laravel/framework/src/Illuminate/Session/DatabaseSessionHandler.php@238 中找到了一些设置会话IP 的代码。但是,如何扩展它,我不知道
  • 没错,没关系。但它会在我的应用程序的其他地方有用

标签: laravel session request


【解决方案1】:

解决方案是这样做。我不完全明白为什么,但它有效。

AWS Application Load Balancer real user ip problem

【讨论】:

    猜你喜欢
    • 2019-07-04
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    • 1970-01-01
    • 2023-01-26
    • 1970-01-01
    • 2014-03-30
    相关资源
    最近更新 更多