繁体   English   中英

"message": "关键路径 \\"file:///app/storage/oauth-private.key\\" 在 Laravel 6 中不存在或不可读"

[英]"message": "Key path \"file:///app/storage/oauth-private.key\" does not exist or is not readable" in Laravel 6

尝试使用 Laravel 护照 Api 登录时,在 Heroku 服务器中出现错误。 迁移和密钥生成一切正常。 但在本地工作正常。

任何人都可以帮助我如何使用以下命令在 heroku 服务器中生成此密钥:

heroku run php artisan passport:key

感谢您的宝贵时间。 完整的错误信息

{
"message": "Key path \"file:///app/storage/oauth-private.key\" does not exist or is not readable",
"exception": "LogicException",
"file": "/app/vendor/league/oauth2-server/src/CryptKey.php",
"line": 48,
"trace": [
    {
        "file": "/app/vendor/laravel/passport/src/PassportServiceProvider.php",
        "line": 243,
        "function": "__construct",
        "class": "League\\OAuth2\\Server\\CryptKey",
        "type": "->"
    },
    {
        "file": "/app/vendor/laravel/passport/src/PassportServiceProvider.php",
        "line": 209,
        "function": "makeCryptKey",
        "class": "Laravel\\Passport\\PassportServiceProvider",
        "type": "->"
    }
]

}

你没有提到你的安装步骤。 假设您执行了以下操作:

composer require laravel/passport

在 config/app.php 中注册服务提供者

Laravel\Passport\PassportServiceProvider::class,

运行迁移

php artisan migrate

最后使用生成密钥

php artisan passport:install

Laravel PassPort 使用使用非对称加密算法的 oauth2。 所以你必须生成公钥和私钥。 你只需要在你的 Laravel 项目中输入这个命令来生成这些密钥。 它们将位于存储文件夹中。

php artisan passport:keys

有关更多信息,请参阅 laravel 文档。 Laravel 文档: https ://laravel.com/docs/8.x/passport#password-grant-tokens

另一种解决方案是转到 .gitignore 文件并删除 ***

贮存 / *。 钥匙

*** 推送到 github 之前的行

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM