我试图像这样使用Artisan命令:

php artisan serve

它显示:

Laravel开发服务器启动:http://127.0.0.1:8000

但是,它不会自动启动,当我手动输入http://127.0.0.1:8000时,它会显示这个错误:

RuntimeException未指定应用加密密钥。

这个问题的原因是什么,如何解决?

我使用Laravel框架5.5-dev。


当前回答

在我的情况下,我还需要重置缓存的配置文件:

php artisan key:generate
php artisan config:cache

其他回答

如果你克隆了一些项目,这类问题可能会经常发生。

确保有.env文件 运行php artisan key:generate,然后在.env中生成APP_KEY 最后运行PHP工匠服务,它应该工作。

遵循以下步骤:

PHP工匠键:生成 PHP工匠配置:缓存 PHP工匠服务

如果运行php artisan key:generate后问题没有解决,请检查您的.env文件。

搜索APP_KEY=。

如果不存在,手动将其添加到.env文件中,并再次运行php artisan key:generate。

在此之后,您将在.env文件中看到生成的密钥。

复制该密钥并将其粘贴到/config/app.php(在那里搜索APP_KEY)。您应该在app.php文件中看到类似这样的内容

'key' => env('APP_KEY', 'base64:…'),

然后运行php artisan serve(在某些时候你可能需要运行php artisan config:cache。不是100%确定什么时候)

.env副本。env的示例: Cp -a .env。例子.env 生成一个密钥: PHP工匠键:生成 然后运行: PHP工匠服务

执行以下命令设置app key

php artisan key:generate

通过运行上面的命令,它将在你的项目目录的.env中设置键值,该值在应用程序配置中被引用

// .env
APP_KEY=base64:XkrFWC+TGnySY2LsldPXAxuHpyjh8UuoPMt6yy2gJ8U=


// config/app.php
'key' => env(APP_KEY);

重新启动服务器,以反映上述更改。