【发布时间】:2015-01-20 08:48:15
【问题描述】:
我有一个本质上是运行 Artisan 命令的“钩子”路由,它接受一些 get 参数作为参数:
Route::get('hook', function()
{
$param = Input::get('param');
Artisan::call('myCommand', array('param' => $param));
}
myCommand 只是在根目录中创建一个名为param 的目录和一个hello.txt 文件。
我可以使用php artisan myCommand param1 很好地运行myCommand,它可以按预期工作。我也可以使用 Artisan 的 tinker 命令并运行 Artisan::call() 也很好。
但是,当我通过访问 URL(例如 example.com/hook&param=hello)尝试该命令时,我的命令没有按预期创建任何内容。如果它也有帮助,我正在 Laravel Forge 上尝试这个。在我的本地开发机器上一切正常。
知道有什么问题吗?
【问题讨论】:
-
听起来像是权限问题。当您执行命令时,HTTP 服务器通常以
www-data运行,您以目录所有者身份登录。因此,您可以创建文件。
标签: php laravel laravel-4 permissions