首页 文章

Laravel命令行在前端

提问于
浏览
0

我想知道是否可以在前端使用laravel artisan命令?如果是的话怎么样?

我的意思是:

例如,为了使网站进入维护模式,我们使用 php artisan down 所以我想知道是否有我的管理员将其作为一个选项,让他们的网站进入维护模式,例如一些复选框?

此外,这也可用于更新 .env 文件代码 .

有什么想法吗?

2 回答

  • 0

    您可以从路由器或控制器中调用Artisan,如下所示:

    Artisan::call('down');
    

    请注意,您可能会收到此错误:

    Use of undefined constant STDIN
    

    您可以通过将此片段放在Artisan电话之前修复:

    define('STDIN',fopen("php://stdin","r"));
    
  • 0

    是的你可以 . 但在你的情况下,它不可行 . 您可以使用控制器中的 Artisan::call('command-name') 调用所有命令 . 因此,您可以从前端传递请求并在控制器中处理它们以执行适当的命令 .

    但是在使用 down 命令将网站置于维护模式的示例中将不正确 . 您可以作为管理员从控制器中调用 Artisan::call('down'); . 但是一旦网站进入维护模式,即使管理员赢得了't be able to access it and thereby having no chance to get it up from your control panel/dashboard. Laravel'的默认中间件也会让所有人都关闭网站,但如果您自定义中间件以允许管理员以维护模式访问网站,您可以使其工作 .

    至于修改.env文件,它只是一个可以像任何其他文件一样被修改的文件 . 但请注意,配置可能会根据您的部署进行缓存,您需要运行 Artisan::call('config:clear'); 来清除或 Artisan::call('config:cache'); 以重新缓存配置 .

相关问题