将会话存储到公共数据库中

基本上我想做的是使用公共数据库在 laravel 应用程序之间共享会话。到目前为止我尝试过的是


.env


DB_CONNECTION=mysql

DB_HOST=127.0.0.1

DB_PORT=3306

DB_DATABASE=login_test

DB_USERNAME=root

DB_PASSWORD=


DB_DATABASE_ADMIN=login_admin

DB_USERNAME_ADMIN=root

DB_PASSWORD_ADMIN=

SESSION_DRIVER=database

SESSION_CONNECTION=login_admin //getting error here: Database [login_admin] not configured.

会话.php


'driver' => env('SESSION_DRIVER', 'file'),

'files' => storage_path('framework/sessions'),

'connection' => env('SESSION_CONNECTION', null),

'table' => 'sessions',

数据库.php


'mysql' => [

    'driver' => 'mysql',

    'url' => env('DATABASE_URL'),

    'host' => env('DB_HOST', '127.0.0.1'),

    'port' => env('DB_PORT', '3306'),

    'database' => env('DB_DATABASE', 'forge'),

    'username' => env('DB_USERNAME', 'forge'),

    'password' => env('DB_PASSWORD', ''),

    'unix_socket' => env('DB_SOCKET', ''),

    'charset' => 'utf8mb4',

    'collation' => 'utf8mb4_unicode_ci',

    'prefix' => '',

    'prefix_indexes' => true,

    'strict' => true,

    'engine' => null,

    'options' => extension_loaded('pdo_mysql') ? array_filter([

        PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),

    ]) : [],

],


'mysql2' => [

    'driver' => 'mysql',

    'url' => env('DATABASE_URL'),

    'host' => env('DB_HOST', '127.0.0.1'),

    'port' => env('DB_PORT', '3306'),

    'database' => env('DB_DATABASE_ADMIN', 'forge'),

    'username' => env('DB_USERNAME_ADMIN', 'forge'),

    'password' => env('', ''),

    'unix_socket' => env('DB_SOCKET', ''),

    'charset' => 'utf8mb4',

    'collation' => 'utf8mb4_unicode_ci',

    'prefix' => '',

    'prefix_indexes' => true,

    'strict' => true,

    'engine' => null,

    'options' => extension_loaded('pdo_mysql') ? array_filter([

        PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),

    ]) : [],

]

所以在这里我想将sessions表设置到我的公共数据库中login_admin


我已经在项目之间共享一个公共用户表,所以连接多个数据库没有问题。我检查了以前的相关问题,但没有找到如何将表共享到公共数据库中


森林海
浏览 120回答 1
1回答

呼如林

/*|--------------------------------------------------------------------------| Session Database Connection|--------------------------------------------------------------------------|| When using the "database" or "redis" session drivers, you may specify a| connection that should be used to manage these sessions. This should| correspond to a connection in your database configuration options.|*/根据您的代码SESSION_CONNECTION字段应该是连接名称,mysql2在您的情况下而不是login_admin
打开App,查看更多内容
随时随地看视频慕课网APP