laravel cron无法启动会话,因为标题已由第0行的“”发送

时间:2013-09-23 17:36:59

标签: php cron laravel

我正在使用Laravel 4构建我的站点,我刚刚创建了一个新命令来备份我的数据库并进行一些数据库更新。通过Windows命令提示符在我的计算机上调用它可以正常工作:

php artisan dbupdate

但是当我尝试在我的共享主机服务器上将它用作cron作业时:

1 * * * * php -q /home/******/laravel/artisan dbupdate

我收到以下错误:

  

无法启动会话,因为标题已由第0行的“”发送。

我认为它可能是我的代码中的内容,所以我对它进行了评论,只是将一个echo“hello command”行放入测试中,但我仍然遇到了同样的错误。它来自laravel / vendor / symfony / http-foundation / Symfony / Component / HttpFoundation / Session / Storage / NativeSessionStorage.php

我对Laravel很新,对cron的工作也很陌生。可能是什么问题?

2 个答案:

答案 0 :(得分:2)

我在this post

中尝试使用php-cli而不是php

所以我的cron工作现在看起来像这样:

1 * * * * php-cli -q /home/******/laravel/artisan dbupdate

虽然我仍然不太明白这有什么不同,但它的效果非常好。

答案 1 :(得分:0)

简而言之,您将尝试在已经发送一些输出后发送标头。我不知道你放了什么,但是代码中的某个地方你可能有一个include()函数。

有关原因和修正的完整说明,请参阅此处 - https://stackoverflow.com/a/8028987/1566393