小编Phi*_*hil的帖子

laravel具有多个迁移表的多个数据库

我试图在laravel 5中建立一个多数据库应用程序。我有一个数据库A和另一个数据库B。在数据库A中有我的主要模型。现在,我尝试编写一个迁移文件,该迁移文件在数据库B中创建一个新表。之所以可行,是因为可以在模式构建器中设置与数据库B的连接,如下所示:

Schema::connection('foo')->create('users', function (Blueprint $table) {
    $table->increments('id'); 
});
Run Code Online (Sandbox Code Playgroud)

但是这里的问题是,迁移表仍位于数据库A中。我想在数据库A中为数据库A中的所有表创建一个迁移表,并为数据库B中的所有表创建一个迁移表。在数据库B中。

我正在搜索这样的东西:

Schema::connection('foo')->migrations_table_connection('foo')->create('users', function (Blueprint $table) {
    $table->increments('id'); 
});
Run Code Online (Sandbox Code Playgroud)

有什么办法吗?谢谢

database migration multiple-databases laravel

6
推荐指数
1
解决办法
6897
查看次数

在 AWS 上部署期间 Laravel 护照无效令牌

我的设置如下:我有一个用 Vue.js 编写的前端,一个 Laravel 5.6 中的 API 和 AWS 上的基础设施。一切都在 docker 容器中运行。我们在前端和 API 之间有 4 个 API 容器和一个负载均衡器。身份验证适用于 Laravel Passport v5 和不记名令牌。

基本上一切正常,身份验证成功。

但是,当我们部署新版本的 API 时,会遇到以下情况:2 个 API 实例的版本为 1,其他 2 个 API 实例的版本为 2。这是有意的,因为我们希望持续部署而不会停机。一段时间后,2 个 v1 实例也被新的 v2 实例替换。所有实例都使用相同的数据库。

不幸的是,在此时间段内,身份验证不再起作用。似乎前端使用正确的新令牌向 API 发出了一些请求。负载均衡器将一些请求分发到 v1 实例,一些分发到 v2 实例。对 v2 实例的请求成功,对 v1 实例的请求不成功(401 未授权)。

我的问题:护照如何验证不记名令牌?为什么 v1 实例不能验证 v2 实例生成的令牌,反之亦然?即使它们都使用相同的数据库,我可以监督哪些实例和影响通行证之间的差异?

amazon-web-services laravel laravel-passport laravel-5.6

0
推荐指数
1
解决办法
907
查看次数