2016-08-26 5 views
2

godaddy共有ホスティングの下で​​Webアプリケーションを実行していて、自分のlaravelアプリケーションで自分のスケジュールタスクを呼び出すcronジョブを実行しようとしています。何らかの理由でスケジューラが呼び出されていない。何を...これら上記のコマンドのGodDdyでcronジョブを使用してLaravelでタスクスケジュールを実行できません

          • php /path/to/artisan schedule:run >> /dev/null 2>&1
          • home/lulzimf/php /home/path/to/artisan schedule:run 1>> /dev/null 2>&1
          • usr/local/php /home/path/to/artisan schedule:run 1>> /dev/null 2>&1
          • /usr/local/bin /path/to/artisan schedule:run >> /dev/null 2>&1

なし私のタスクスケジューラを実行するようだ、私はそれが動作しますが、職人のコマンドを使用してからコマンドを呼び出す試してみました:これは私がこれまで試してみましたGoDaddyの中にコマンドですこれは動作していないと思いますか?他の私はIllmuniate\Console\SchedulingSchedule.phpファイルを編集する必要がありましたホスティングと私の経験では、

<?php namespace App\Console; 

use Illuminate\Console\Scheduling\Schedule; 
use Illuminate\Foundation\Console\Kernel as ConsoleKernel; 

class Kernel extends ConsoleKernel { 

    /** 
    * The Artisan commands provided by your application. 
    * 
    * @var array 
    */ 
    protected $commands = [ 
     'App\Console\Commands\Inspire', 
     'App\Console\Commands\UpdateClassSession', 
    ]; 

    /** 
    * Define the application's command schedule. 
    * 
    * @param \Illuminate\Console\Scheduling\Schedule $schedule 
    * @return void 
    */ 
    protected function schedule(Schedule $schedule) 
    { 
     $schedule->command('inspire') 
       ->hourly(); 
     $schedule->command('class-session-update') 
       ->everyFiveMinutes(); 
    } 

} 
+0

/path/to/artisanの代わりにcronタブに 'artisan'ファイルへの実際のパスがあるとしますか? –

+0

@DenisMysenkoどうすれば確認できますか? – artan

+1

/path/to/artisan - これは単なるプレースホルダです。これを使用するように指示した人は、この文字列を「職人」ファイルへの実際のパスに置き換える必要があることを意味します。/path/toが実際のフォルダであるとは期待できません –

答えて

0

だけGoDaddyはない:

これは私のカーネルがどのように見えるかです。

そして、私は基本的に、これはPHPへの完全なパスと職人へのフルパスでqueue:workコマンドまたは任意の他のコマンドを実行します。このreturn $this->exec("/usr/bin/php -ea_php 70 -q /home/xxxxx/xxxxx/artisan {$command}", $parameters);

Line 49を編集しました。

私の場合、cliによって使用されているデフォルトのphpバージョンがlaravelによってサポートされていなかったため、私も-ea_php 70を追加しなければなりませんでした。

ので

  1. チェックPHPのバージョンと、それはlaravelによってサポートされていることを確認してください。
  2. cronを実行するためにcliが使用しているPHPバージョンを確認してください。
  3. PHPへのフルパスを確認して使用してください。
  4. 職人のフルパスを確認して使用してください。あなたはのphp.iniファイルを編集する必要がとonregister_argc_argvを設定することについては

    undefined index argv

は、いくつかのケースでも、このエラーを取得する可能性があります。

関連する問題