web-dev-qa-db-ja.com

oauth-private.keyが存在しないか、読み取れません

そのため、Bitbucketから別のプロジェクトをインポートし、php artisan serveを使用してそれを起動しようとしましたが、常に次のエラーが発生します。

[LogicException]                                                                   
  Key path "file:///var/www/html/DesignViewer5/storage/oauth-private.key" does not   
  exist or is not readable                                                           

自分でプロジェクトを作成してもこのエラーは発生しません。他のコマンドを実行できません。 「php artisan key:generate」を試してみたところ、まったく同じエラーが発生しました。

私は試しました:composer update、そしてこれを手に入れました:

Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 0 installs, 1 update, 0 removals
  - Updating spatie/laravel-permission (1.11.1 => 1.12.0) Downloading: 100%         
Writing lock file
Generating autoload files
> Illuminate\Foundation\ComposerScripts::postUpdate
> php artisan optimize


  [LogicException]                                                             
  Key path "file:///var/www/html/DesignViewer5/storage/oauth-private.key" doe  
  s not exist or is not readable                                               


Script php artisan optimize handling the post-update-cmd event returned with error code 1

誰でもそれを修正する方法を知っていますか?ありがとう!

11
O'Niel

私は解決策を見つけましたSolution: config/app.phpで、これらの行にコメントする必要がありました:

/*Laravel\Passport\PassportServiceProvider::class,
App\Providers\CodeGrantProvider::class,
Spatie\Permission\PermissionServiceProvider::class,*/

この行のコメントを外すよりも、データベース全体を再度移行する必要がある場合:

Laravel\Passport\PassportServiceProvider::class,

そしてphp artisan passport:installを実行すると、アプリケーションキーが機能しなかったので、次のようにする必要がありました。

php artisan config:clear
php artisan key:generate
php artisan config:clear

そして、私ができるよりphp artisan serve

ありがとう!

3
O'Niel

これはLaravel Passportによるものだと思います。次のコマンドを試してください:

php artisan passport:install

このコマンドは、安全なアクセストークンを生成するために必要な暗号化キーを作成します。さらに、コマンドは、アクセストークンの生成に使用される「個人アクセス」および「パスワード許可」クライアントを作成します

ソース: https://laravel.com/docs/5.4/passport

18
Hammerbot

作曲家を更新したときに同じ問題が発生しました。php artisan passport:keysを使用してキーを再度生成し、問題を解決しました

4

このコマンドを実行

Sudo chown www-data:www-data storage/oauth-*.key
php artisan passport:install
php artisan config:clear
php artisan key:generate
php artisan config:clear
2
Ahmed Safadi

/storage/*.key.gitignoreにあるため、プロジェクトをプルすると、php artisan passport:keysを実行してキーが欠落している可能性があり、新しいキーが生成されます。

1
shivanikoko

ステップ1:

oauth-private.keyおよびoauth-public.keyストレージフォルダーがない場合は最初のステップをスキップ ..に存在しない場合にのみ実行します。

php artisan passport:install

ステップ2:

構成をクリアしてキーを生成

 php artisan config:clear
 php artisan key:generate
 php artisan config:clear

ステップ3:

そのような許可と所有者の変更

Sudo chown www-data:www-data storage/oauth-*.key
Sudo chmod 600 storage/oauth-*.key
1
Jignesh Joisar

ファイルの特定の場所にキーがあるまで、この行を実行しないでください

authServiceProvider.php

// Passport :: loadKeysFrom( '/ secret-keys/oauth');

0
amine ghandi