【问题标题】:Am I right intercept start the session?我是否正确拦截开始会话?
【发布时间】:2018-03-30 03:30:28
【问题描述】:

我在两个域上有 2 个站点:site.info(legacy) 和 sub.site.info(在其他服务器上,其他代码库基于 Laravel5.5)。 我需要:当您在 site.info 上授权并访问 sub.site.info laravel 读取您的 cookie 并在网站上自动授权您。

我做了什么:

使用 startSession 方法扩展 Illuminate\Session\Middleware\StartSession 的创建中间件“StartSession”:

public function startSession(Request $request)
    {
        event(new SiteAuth($session=parent::startSession($request)));
        return $session;
    }

在 Http\Kernel.php 中替换了原来的中间件。

创建:

  • Provider (SiteAuthServiceProvider) 并注册了我的 StartSession
  • 事件 (SiteAuth)
  • 监听器(SiteAuthListener),

我将在 SiteAuthListener@handle 中编写我的身份验证代码。

这样对吗?

谢谢。

【问题讨论】:

    标签: laravel


    【解决方案1】:

    我相信您可以更改会话配置文件 (yourproject/config/session.php) 并添加域,在您的情况下是“yoursite.ttf”。

    'domain' => 'yoursite.ttf'
    

    或者更优雅的方式是

    'domain' => env('DOMAIN')// which will be inside .env file (DOMAIN=yoursite.ttf)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-29
      • 1970-01-01
      • 1970-01-01
      • 2013-01-23
      • 1970-01-01
      • 2015-06-19
      相关资源
      最近更新 更多