子域和使用 laravel 进行身份验证

Posted

技术标签:

【中文标题】子域和使用 laravel 进行身份验证【英文标题】:Subdomains and Auth with laravel 【发布时间】:2017-08-31 09:10:19 【问题描述】:

我创建了一个项目,其中有多个不同的部分都存储在一个子域中,例如:

core.sample.com
map.sample.com
character.sample.com

我希望用户只能登录:sample.com 并查看一个页面以选择他们想去的部分。

我已经创建了第一个子域

Route::group(['domain' => 'core.rpsbackpack.com'], function () 
    Route::get('/', 'CoreController@index')->name('core.index');
);

但是我现在需要禁用登录过程或重定向到主域。但是我不知道如何让它工作。 我在文件夹顶部有 Auth 路由,但我不知道这是否正确。

Auth::routes();

Route::group(['domain' => 'core.rpsbackpack.com'], function () 
    Route::get('/', 'CoreController@index')->name('core.index');
);

Route::get('/', function () 
    return view('welcome');
);

轻松支持大量子域的最佳方式是什么?

【问题讨论】:

您在子域中是否有另一个安装 laravel? 不,我有一个通配符域指向一个 laravel 实例,然后我使用我的路由文件夹来拆分子域 @Eitan 【参考方案1】:

您需要将 config/session.php 中的域配置更新为类似的内容,因此会话在子域之间共享。

'domain' => '.sample.com',

【讨论】:

以上是关于子域和使用 laravel 进行身份验证的主要内容,如果未能解决你的问题,请参考以下文章

未经身份验证的 api laravel 子域

通过多个 Laravel 5 安装跨子域共享身份验证会话

如何跨子域进行身份验证

MVC 身份 cookie 跨子域进行身份验证

Laravel 5.1 使用默认身份验证控制器和中间件尝试使用额外参数进行身份验证

有没有办法让一个人在跨子域的 firebase 上进行身份验证