在Elastic Beanstalk上创建cronjob时遇到问题

时间:2020-05-05 09:54:06

标签: php linux amazon-web-services amazon-elastic-beanstalk

我在Elastic Beanstalk上运行PHP Web环境。 iv尝试了6种方法在周日设置cronjob: 遵循.ebextensions文件夹中cronjobs上的AWS模板, 使用https://stackoverflow.com/questions...等建议的crontab -e在shell中手动创建作业。

当前,我在.ebextensions文件夹中拥有此配置文件,另存为cron-linux.config

files:
  "/etc/cron.d/mycron":
    mode: "000644"
    owner: root
    group: root
    content: |
      */3 * * * * root /var/www/html/crawler/mine.php >/dev/null 2>&1

commands:
  remove_old_cron:
    command: "rm -f /etc/cron.d/mycron.bak"

请帮助!

1 个答案:

答案 0 :(得分:0)

成功!

解决此问题的步骤:

  1. 使用AWS示例Cron Job后发现HERE
  2. 从bash脚本运行PHP脚本:

    #!/bin/bash
    
    php -f /var/www/html/mine.php
    
    exit 0
    
  3. 然后使用创建了“ mine.php”可执行文件

    sudo chmod +x mine.php
    

两个问题:

  1. 与数据库的连接详细信息必须经过硬编码,因为$ SERVER变量不起作用(不确定原因)

  2. 脚本中发送带有结果的电子邮件的部分仍然不起作用。

不确定从浏览器运行脚本但不能在bash中运行某些东西为什么会起作用吗?但是至少Cron工作正在工作。

希望这对某人有帮助