2015-11-17 52 views
0

我將我在Laravel 4中開發的應用程序轉移到Google App Engine。我按照本教程Cron作業未在Google應用程序引擎中執行+ Laravel 4

https://gae-php-tips.appspot.com/2013/10/22/getting-started-with-laravel-on-php-for-app-engine/

一切都很完美提到的步驟。爲了在Google App引擎中設置cron jb,我創建了一個cron.yaml文件。但問題是它沒有得到執行。我已經尋找解決方案,但沒有發現任何問題。以下是我的cron.yaml文件

cron: 
- description: Todo reminder 
    url: /gae_cron/todo_reminder 
    schedule: every 1 minutes from 00:00 to 23:59 

我的app.yaml文件

application: test 
version: beta-1-11 
runtime: php55 
api_version: 1 

handlers: 

    - url: /favicon\.ico 
     static_files: public/favicon.ico 
     upload: public/favicon\.ico 

    - url: /packages 
     static_dir: public/packages 

    - url: /assets 
     static_dir: public/assets 

    - url: /views 
     static_dir: public/views 

    - url: /.* 
     script: public/index.php 

下面是我從cron.yaml

Route::get('gae_cron/todo_reminder', function() { 
    Log::info('todo reminder route'); 
}); 

調用的路線,但我不能看到日誌中的任何內容。但是,當我通過在瀏覽器中直接粘貼url來執行它時,它會顯示在日誌中。

有沒有人設法在GAE與Laravel做cron工作。

+0

您是否在開發人員控制檯中看到cron作業('Compute'->'App Engine'->'Task queues'在左側菜單中,然後是'Cron Jobs'選項卡)? –

+0

@DanCornilescu它沒有顯示任何東西 –

+0

看看這個答案(適用於PHP)有助於:http://stackoverflow.com/questions/32206102/python-google-app-engine-cron-job-not-working/32206692 #32206692 –

回答

0

按照谷歌App Engine的文件

You can use appcfg.py to upload cron jobs and view information about the defined cron jobs. When you upload your application to App Engine using appcfg.py update, the Cron Service is updated with the contents of cron.yaml. You can update just the cron configuration without uploading the rest of the application using appcfg.py update_cron 

要上傳的cron項分別

appcfg.py -A <project-id> update_cron . 

要驗證轉到

Compute->App Engine->Task queues 

那裏你會找到所有你有cron的條目在cron.yaml文件中提到