简体   繁体   English

Google App Engine Flexible环境中的Cron作业失败

[英]Cron job failed in Google App Engine Flexible environment

I m migrating my PHP application from Google App engine Standard Environment to Flexible environment . 我将PHP应用程序从Google App引擎标准环境迁移到Flexible环境

My application working fine with database and send grid. 我的应用程序可以很好地处理数据库并发送网格。 But Cron jobs are failed. 但是Cron工作失败了。

I could not find what I missed to run a Cron job in GAE Flexible environment.I gave sample application code here . 我找不到在GAE Flexible环境中运行Cron作业所错过的地方。我在此处提供了示例应用程序代码。

app.yaml app.yaml

runtime: php
env: flex

runtime_config:
document_root: web

handlers:

- url: /crontest
script: crontest.php

- url: .*
script: index.php

#[START env]
env_variables:
MYSQL_DBNAME: CRONDB
MYSQL_USER: root
MYSQL_PASSWORD: root123
MYSQL_CONNECTION: /cloudsql/project-id:us-central1:testphp7
#[END env]

#[START cloudsql_settings]
# Use the connection name obtained when configuring your Cloud SQL instance.
beta_settings:
cloud_sql_instances: "project-id:us-central1:testphp7"
#[END cloudsql_settings]

cron.yaml cron.yaml

- description: cron test
url: /crontest
schedule: every day 17:00
timezone: Asia/Kolkata

web/connection.php web / connection.php

<?php    
    $con = new mysqli(null,$_SERVER['MYSQL_USER'],$_SERVER['MYSQL_PASSWORD'],$_SERVER['MYSQL_DBNAME'],null,$_SERVER['MYSQL_CONNECTION']);
?>

web/crontest.php web / crontest.php

<?php

include "connection.php";

$ATERM_spcallstmt="INSERT INTO SAMPLE(TEST_NO)VALUES('9876')";
$con->query($ATERM_spcallstmt);
?>

web/index.php web / index.php

<?php
echo " Test Cron in FE";
?>

Create table Query: 创建表查询:

CREATE TABLE SAMPLE(TEST_NO VARCHAR(250));

Log from API Console 从API控制台登录

18:57:00.000172.18.0.3 - - [02/May/2017:13:27:00 +0000] "GET /crontest.php HTTP/1.1" 404 162 "-" "AppEngine-Google; (+http://code.google.com/appengine)"
{
textPayload: "172.18.0.3 - - [02/May/2017:13:27:00 +0000] "GET /crontest.php HTTP/1.1" 404 162 "-" "AppEngine-Google; (+http://code.google.com/appengine)" "
insertId: "epwcgng8mcw86z"
resource: {…}
timestamp: "2017-05-02T13:27:00Z"
labels: {…}
logName: "projects/project-id/logs/appengine.googleapis.com%2Fstdout"
}

I got HTTP 404 & Cron Failed. 我收到HTTP 404和Cron失败。

Please help me to fix this. 请帮助我解决此问题。

Thanks in advance. 提前致谢。

It looks like the cron is trying to accessing /web/crontest.php which is incorrect path in your case. cron似乎正在尝试访问/web/crontest.php ,这是您所用的错误路径。 I suspect you still have old cron config alive? 我怀疑您还活着还有旧的cron配置?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Cron作业未在Google App Engine + Laravel 4中执行 - Cron job is not executing in google app engine + Laravel 4 自定义域上的Google App Engine Cron作业 - Google app engine cron job on custom domain Google App Engine灵活PHP环境中服务器之间的会话 - Session between servers in Google App Engine Flexible PHP environment 如何在Google App Engine灵活环境上强制使用SSL - How to Force SSL on Google App Engine Flexible Environment 在 Google App Engine 柔性环境 PHP (Laravel) 上启用 CORS - Enabling CORS on Google App Engine Flexible environment PHP (Laravel) 如何通过 PHP App Engine 应用程序在 Google Compute Engine 实例上创建 cron 作业? - How to create a cron job on a Google Compute Engine instance via a PHP App Engine application? 如何在Google App Engine PHP灵活环境中为GD启用FreeType支持? - How do I enable FreeType support for GD in Google App Engine PHP flexible environment? 无法从Google App Engine灵活环境PHP项目连接到Cloud SQL实例 - Cannot connect to cloud sql instance from google app engine flexible environment PHP project 如何在 PHP7 环境中的 Google App Engine Flexible 中将 HTTP 重定向到 HTTPS? - How to redirect HTTP to HTTPS in Google App Engine Flexible in PHP7 Environment? Google App Engine Cron PHP - Google App Engine Cron PHP
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM