1. ホーム
  2. php

[解決済み] Lumen Micro Framework => php artisan key:generate

2023-06-11 10:13:41

質問

PHPのマイクロフレームワークLumen(Laravel由来)を試しているところです。

私の最初のステップは .env.example ファイルを調べて、そのコピーを作成して、私の .env ファイルを作成します。Laravelと同じようにAPP_KEYという変数があります。さて、試しに簡単なコマンドを実行してみました。 php artisan key:generate で新しいキーを取得しようとしましたが、以下のエラーメッセージに遭遇しました。

[InvalidArgumentException]が発生しました。 key".名前空間で定義されたコマンドはありません。 名前空間に定義されたコマンドはありません。

Lumen用のキーを生成する方法をご存知の方はいらっしゃいますか?

解決策を更新しました。

そこで、この問題に対する私のお気に入りの解決策を見つけました。コマンドライン (Linux) で、私は php -r "echo md5(uniqid()).\"\n\";" を実行すると、次のようなものが得られます。 7142720170cef01171fd4af26ef17c93 .

Lumen を頻繁に使用する場合は、エイリアスとして .bashrc にエイリアスを作り、ホームディレクトリにある /home/USERNAME . これを行うには、このファイルを nano ~/.bashrc または vi ~/.bashrc と入力し、ファイルの末尾に以下のエイリアスをコピーしてください。 alias phpkey='php -r "echo md5(uniqid()).\"\n\";"' . これで、コマンド phpkey で、32文字長のランダムな文字列が得られます :)

どのように解決するのですか?

Laravelのコマンドはかなりシンプルです。32文字の長い文字列をランダムに生成するだけです。Lumenでも同じことができます。このように一時的にルートを追加するだけです。

$router->get('/key', function() {
    return \Illuminate\Support\Str::random(32);
});

次に /key を開き、そのキーをコピーペーストして .env ファイルに貼り付けてください。

その後、ルートを削除してください。

もちろん、オンラインでランダムな文字列ジェネレータを使用することもできます。 このように