何时在 Laravel 生成新的应用程序密钥?

因为当我创建应用程序时,它会自动为我在 .env文件中设置它,所以我不确定什么时候应该运行它。

除此之外,如果有第二个开发人员进来,并且 克隆人应用程序,他/她是否需要运行 php artisan key:generate

我们如何确切地知道什么时候运行 php artisan key:generate

218334 次浏览

php artisan key:generate是一个命令,用于设置 .env文件中的 APP_KEY值。默认情况下,此命令按照 composer create-project laravel/laravel命令运行。如果您使用像 git这样的版本控制系统来管理您的项目以进行开发,那么调用 git push ...将把您的 Laravel 项目的副本推送到任何位置,但不会包含您的 .env文件。因此,如果有人克隆你的项目使用 git clone ...他们将不得不手动输入 php artisan key:generate为他们的应用程序正常运行。

因此,TL: DR 唯一一次 需要调用 php artisan key:generate是在预先创建的 Laravel 项目的 clone之后。

附注: 如果您尝试运行一个将 APP_KEY设置为 SomeRandomString(这是 .env.example文件中的默认值)的 Laravel 项目,您实际上会得到一个错误:

找不到受支持的加密器。密码和/或密钥长度无效。

当克隆一个 laravel 项目时,最重要的事情是先运行 composer update,然后再运行 composer installcomposer install命令为这个 laravel 应用程序安装任何所需的依赖项。

我采取的克隆 Laravel 项目的步骤需要使用 php artisan key:generate命令。我可以看到在我的 .env文件中,有一个更新后的 APP_KEY=base64:xxxxxxxxxxxxxxxxxxxx运行这个命令。