我试图像这样使用Artisan命令:
php artisan serve
它显示:
Laravel开发服务器启动:http://127.0.0.1:8000
但是,它不会自动启动,当我手动输入http://127.0.0.1:8000时,它会显示这个错误:
RuntimeException未指定应用加密密钥。
这个问题的原因是什么,如何解决?
我使用Laravel框架5.5-dev。
我试图像这样使用Artisan命令:
php artisan serve
它显示:
Laravel开发服务器启动:http://127.0.0.1:8000
但是,它不会自动启动,当我手动输入http://127.0.0.1:8000时,它会显示这个错误:
RuntimeException未指定应用加密密钥。
这个问题的原因是什么,如何解决?
我使用Laravel框架5.5-dev。
当前回答
如果你没有.env文件,那么运行下面的命令,否则跳过这个
cp .env.example .env
然后运行下面的artisan命令,它将为你的项目生成一个应用程序密钥:
php artisan key:generate
注意:你的APP_KEY在你的.env文件中。
其他回答
我遇到了这个问题,当我手动复制我的Laravel项目的内容(说sites/oldname)到我的Mac上的一个新目录(说sites/newname)。由于我手动拖放,它没有抓取隐藏文件,即'.env'。 当我仔细查看sites/oldname时,我看到了.editorconfig, .env, .env。例如,. gitattributes, .styleci。yml等。
一旦我将隐藏文件复制到新目录,错误就消失了。
因此,“未指定应用程序加密密钥”是Laravel语言中“您的。env文件丢失”的意思。
执行以下命令设置app key
php artisan key:generate
通过运行上面的命令,它将在你的项目目录的.env中设置键值,该值在应用程序配置中被引用
// .env
APP_KEY=base64:XkrFWC+TGnySY2LsldPXAxuHpyjh8UuoPMt6yy2gJ8U=
// config/app.php
'key' => env(APP_KEY);
重新启动服务器,以反映上述更改。
简单地运行
php artisan key:generate
这对我很管用
如果你克隆了一些项目,这类问题可能会经常发生。
确保有.env文件 运行php artisan key:generate,然后在.env中生成APP_KEY 最后运行PHP工匠服务,它应该工作。
我不得不在运行php artisan key:generate后使用php artisan queue:restart重新启动我的队列工作。