未指定任何应用程序加密密钥

Car*_*s F 222 php laravel laravel-5 artisan laravel-5.5

我是Laravel的新手,我正在尝试使用Artisan命令......

php artisan serve
Run Code Online (Sandbox Code Playgroud)

它显示......

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

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

RuntimeException未指定应用程序加密密钥.

有任何想法吗?我正在使用Laravel framework 5.5-dev.

Ama*_*san 385

来自加密 - Laravel - Web工匠的PHP框架:

"在使用Laravel的加密器之前,必须在config/app.php配置文件中设置一个关键选项.您应该使用该 php artisan key:generate命令生成此密钥"

我发现在google.com上使用这个复杂的互联网查询:

"laravel添加加密密钥"(是的,它甚至与错字一起工作!)

  • 我用谷歌搜索了整个错误,没有任何东西,只是谷歌搜索设置encriptyon键并找到了.感觉像个傻瓜.谢谢.对于到达这里的人来说,只需运行:`php artisan key:generate` (21认同)
  • 这对我有用,但我首先必须将.env.example文件重命名为.env才能使用,否则我得到".env:no such file"错误. (6认同)
  • `php artisan key:generate`甚至不适合我.给我同样的错误**没有指定应用程序加密密钥**,请问任何解决方案? (5认同)
  • 对于遇到我的问题的其他人,请将此输入到终端 cp .env.example .env php artisan key:generate (2认同)
  • 可行,但首先您需要创建一个空的 .env 文件,然后将 .env.example 的内容复制到您的 .env 文件中。.env.exampe 文件有一个 'APP_KEY=' 行,其中 'APP_KEY' 是键,没有指定任何值作为值。如果您没有 'APP_KEY=' 行,它似乎不会将生成的密钥添加到 .env 文件中。然后我还必须运行 'php artisan config:cache' 然后重新启动服务器,使其工作。 (2认同)

Leo*_*hko 110

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

php artisan key:generate
php artisan config:cache
Run Code Online (Sandbox Code Playgroud)

  • 忘记清除缓存后,我总是会看到这个答案 (3认同)
  • 除此之外,首先确保您的“.env”文件至少包含空键选项,例如:“APP_KEY=” (3认同)
  • 或者,对于本地开发,使用“php artisan config:clear”,它不会生成新的缓存版本。 (3认同)
  • 这是所有答案中都没有的。非常感谢!:) (2认同)
  • @Pathros 创建/重新生成缓存的配置文件 (2认同)

skm*_*skm 52

运行该命令.env,它将为您的应用程序生成应用程序密钥.您可以在.env文件中找到应用程序密钥(APP_KEY).


D J*_*D J 20

简单地跑 __CODE__

  • 大多数支持ssh连接。从终端运行ssh yourusername @ server_ip (2认同)

Ada*_*ery 19

  1. 复制.env.example.env:

    cp -a .env.example .env

  2. 生成密钥:

    php artisan key:generate

  3. 然后运行:

    php artisan serve


Sab*_*osh 15

cp .env.example .env如果没有.env文件. php artisan key:generate命令对我有用.它生成加密密钥

  • 完成上述步骤后,使用php artisan config:cache命令清除缓存。 (4认同)

kau*_*hik 15

在项目的根文件夹中打开命令提示符并运行

php artisan key:generate
Run Code Online (Sandbox Code Playgroud)

然后

php artisan config:cache
Run Code Online (Sandbox Code Playgroud)

进而

如果您在获得键值后遇到相同的错误,那么只需从 .env 文件中复制 APP_KEY 值并将其粘贴到 config/app.php 并使用“key”=>“YOUR KEY”,

然后再次运行

php artisan config:cache
Run Code Online (Sandbox Code Playgroud)


小智 14

我实际上必须将.env文件添加到我的项目中,然后复制.env.example的内容以便它key:generate可以工作.我不确定为什么在启动项目时没有创建.env文件.


小智 11

php artisan key:generate
php artisan config:cache
Run Code Online (Sandbox Code Playgroud)

为我工作,但它必须在Windows上的命令提示符下完成.

在PHPStorm的终端内部进行此操作无效.


Udh*_*iya 11

在处理Laravel应用程序时可能遇到的常见问题是例外:

RuntimeException未指定应用程序加密密钥.

当您下拉现有的Laravel应用程序时,您经常会遇到这种情况,在该应用程序中,您将.env.example文件复制到该文件.env但不为该APP_KEY变量设置值.

在命令行中,发出以下Artisan命令以生成密钥:

php artisan key:generate
Run Code Online (Sandbox Code Playgroud)

这将生成一个随机密钥APP_KEY,完成.env编辑后,请在终端中输入此命令以清除缓存:php artisan config:cache

此外,您必须重新启动服务器,现在您将无法看到此错误消息.


Dar*_*ich 8

分3步:

生成新密钥 php artisan key:generate

清除配置 php artisan config:clear

更新缓存 php artisan config:cache


小智 8

只需运行命令php artisan key:generate .. 仍然存在问题,然后再运行一个命令php artisan config:cachephp artisan cache:clear ..

现在运行php artisanserve


小智 7

请按照以下步骤操作:

  1. php artisan key:generate
  2. php artisan config:cache
  3. php artisan serve


Dmi*_*nko 5

好的,我再写一条指令,因为在这里找不到明确的答案。因此,如果您遇到此类问题,请遵循以下步骤:

  1. 将项目根目录中的.env.example文件重命名或复制/重命名为.env

您不仅应该创建一个空的.env文件,还应该使用.env.example的内容填充它。

  1. 在终端中,转到项目根目录(非公共文件夹)并运行

PHP的工匠键:生成

  1. 如果一切正常,终端中的响应应如下所示

已成功设置应用程序密钥[base64:wbvPP9pBOwifnwu84BeKAVzmwM4TLvcVFowLcPAi6nA =]。

  1. 现在,只需复制密钥本身,并将其作为值粘贴到您的.env文件中即可。结果行应如下所示:

APP_KEY = base64:wbvPP9pBOwifnwu84BeKAVzmwM4TLvcVFowLcPAi6nA =

  1. 在终端运行

PHP的工匠配置:缓存

而已。


Dil*_*ere 5

我发现这里大多数答案都不完整。如果其他人仍在寻找这个:

  1. 检查.env 中是否有APP_KEY= ,如果没有,只需添加它而不添加值。
  2. 运行此命令:php artisan key:generate。这会将值填充到 .env 文件中的 APP_KEY。
  3. 最后,运行php artisan config:cache以清除您的配置缓存并使用新的 APP_KEY 值重新缓存您的配置。