首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >流明微框架=> php技工键:生成

流明微框架=> php技工键:生成
EN

Stack Overflow用户
提问于 2015-05-20 08:23:38
回答 14查看 94.4K关注 0票数 88

我正在尝试PHP微框架Lumen (来自Laravel)。

我的第一步是查看.env.example文件,并将其复制成.env文件。有一个变量APP_KEY,就像在Laravel中一样。现在,我尝试了简单的命令php artisan key:generate来获取我的新键,但是我遇到了以下错误消息:

InvalidArgumentException在"key“命名空间中没有定义任何命令。

有人知道我如何为Lumen生成密钥吗?

用解决方案更新

所以我找到了我最喜欢的解决这个问题的方法。在命令行(Linux)上,我运行php -r "echo md5(uniqid()).\"\n\";",这给了我类似于7142720170cef01171fd4af26ef17c93的东西。

如果要更频繁地使用Lumen,则可能需要在.bashrc中创建别名,该别名位于主目录/home/USERNAME中。为此,您可以使用nano ~/.bashrcvi ~/.bashrc打开文件,并在文件末尾复制以下别名alias phpkey='php -r "echo md5(uniqid()).\"\n\";"'。现在您可以使用命令phpkey,它将为您提供一个32个字符长的随机字符串:)

EN

回答 14

Stack Overflow用户

回答已采纳

发布于 2015-05-20 08:51:14

Laravel命令相当简单。它只生成一个随机的32个字符长字符串。你可以在Lumen做同样的事。只需临时添加一条这样的路线:

代码语言:javascript
复制
$router->get('/key', function() {
    return \Illuminate\Support\Str::random(32);
});

然后转到浏览器中的/key,并将密钥复制到.env文件中。

然后移走路线。

显然,您也可以使用一些随机字符串生成器在线。就像这个

票数 147
EN

Stack Overflow用户

发布于 2015-05-20 14:34:55

首先,您必须注册您的密钥生成器命令,将此鲁门密钥生成器命令放到app/Console/Commands/KeyGenerateCommand.php中。若要使此命令在artisan中可用,请更改app\Console\Kernel.php

代码语言:javascript
复制
/**
 * The Artisan commands provided by your application.
 *
 * @var array
 */
protected $commands = [
    'App\Console\Commands\KeyGenerateCommand',
];

然后,配置应用程序,使Illuminate\Config\Repository实例具有app.key值。为此,请更改bootstrap/app.php

代码语言:javascript
复制
<?php

require_once __DIR__.'/../vendor/autoload.php';

Dotenv::load(__DIR__.'/../');

/*
|--------------------------------------------------------------------------
| Create The Application
|--------------------------------------------------------------------------
|
| Here we will load the environment and create the application instance
| that serves as the central piece of this framework. We'll use this
| application as an "IoC" container and router for this framework.
|
*/

$app = new Laravel\Lumen\Application(
    realpath(__DIR__.'/../')
);

$app->configure('app');

之后,将.env.example文件复制到.env

代码语言:javascript
复制
cp .env.example .env

如果已经使用.env文件,则忽略此步骤。

通过以下方式享受您的key:generate命令:

代码语言:javascript
复制
php artisan key:generate

编辑

您可以使用流明发生器。它涵盖了你在Laravel中丢失的大量命令。

票数 42
EN

Stack Overflow用户

发布于 2019-05-02 19:09:51

只需使用PHP即可。从本地或远程命令行运行此命令行,生成一个随机的32个字符的Lumen APP_KEY:

代码语言:javascript
复制
php -r "echo bin2hex(random_bytes(16));"

输出: bae48aba23b3e4395b7f1b484dd25192

在Mac和Windows上使用PHP7.x。

票数 29
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30344141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档