我试图像这样使用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。
当前回答
执行以下命令设置app key
php artisan key:generate
通过运行上面的命令,它将在你的项目目录的.env中设置键值,该值在应用程序配置中被引用
// .env
APP_KEY=base64:XkrFWC+TGnySY2LsldPXAxuHpyjh8UuoPMt6yy2gJ8U=
// config/app.php
'key' => env(APP_KEY);
重新启动服务器,以反映上述更改。
其他回答
实际上,我必须在我的项目中添加一个。env文件,然后复制。env的内容。示例,这样键:generate就可以工作。不确定为什么启动项目时没有创建.env文件。
php artisan key:generate
php artisan config:cache
对我来说是可行的,但必须在Windows系统的命令提示符下完成。
在PHPStorm的终端中这样做是行不通的。
如果你克隆了一些项目,这类问题可能会经常发生。
确保有.env文件 运行php artisan key:generate,然后在.env中生成APP_KEY 最后运行PHP工匠服务,它应该工作。
来自Encryption - Laravel - PHP框架的Web工匠:
在使用Laravel的加密器之前,你必须在你的 Config /app.php配置文件。你应该使用 PHP工匠密钥:生成命令生成此密钥
来自Encryption - Laravel - PHP框架的Web工匠:
"Before using Laravel's encrypter, you must set a key option in your config/app.php configuration file. You should use the php artisan key:generate command to generate this key"
我在google.com上用这个查询找到了它: “laravel添加加密密钥”(是的,即使有打字错误也能工作!)
请注意,如果.env文件包含密钥,但您仍然得到一个应用程序密钥错误,然后运行php artisan config:cache来清除和重置配置。
在Laravel v8.49.0 (PHP v8.0.6)解决方案中面临同样的问题
点击
生成应用程序密钥
现在点击刷新