我试图像这样使用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。
当前回答
我遇到了这个问题,当我手动复制我的Laravel项目的内容(说sites/oldname)到我的Mac上的一个新目录(说sites/newname)。由于我手动拖放,它没有抓取隐藏文件,即'.env'。 当我仔细查看sites/oldname时,我看到了.editorconfig, .env, .env。例如,. gitattributes, .styleci。yml等。
一旦我将隐藏文件复制到新目录,错误就消失了。
因此,“未指定应用程序加密密钥”是Laravel语言中“您的。env文件丢失”的意思。
其他回答
.env副本。env的示例: Cp -a .env。例子.env 生成一个密钥: PHP工匠键:生成 然后运行: PHP工匠服务
你在开发Laravel应用程序时可能遇到的一个常见问题是:
RuntimeException未指定应用加密密钥。
当您下拉一个现有的Laravel应用程序时,您经常会遇到这种情况。示例文件到.env,但不要为APP_KEY变量设置值。
在命令行中,发出以下Artisan命令来生成一个密钥:
php artisan key:generate
这将为APP_KEY生成一个随机键,完成。env编辑后,请在您的终端输入此命令以清除cache:php artisan config:cache
此外,如果您使用PHP的默认web服务器(如。PHP artisan serve)你需要重新启动服务器改变你的.env文件的值。现在您将无法看到此错误消息。
简单地运行命令php工匠键:生成..问题仍然存在,然后运行一个命令php artisan配置:缓存和php artisan缓存:清除..
现在运行php artisan serve
在Laravel v8.49.0 (PHP v8.0.6)解决方案中面临同样的问题
点击
生成应用程序密钥
现在点击刷新
php artisan key:generate
php artisan config:cache
对我来说是可行的,但必须在Windows系统的命令提示符下完成。
在PHPStorm的终端中这样做是行不通的。