【发布时间】:2025-11-27 11:50:02
【问题描述】:
我想在 Amazon Lightsail 实例上设置定期作业,但找不到任何相关信息 - 仅适用于 Amazon EC2。
是否可以在 lightsail 实例上发布 cron 作业,还是需要更改为 EC2?
【问题讨论】:
标签: php cron amazon-lightsail
我想在 Amazon Lightsail 实例上设置定期作业,但找不到任何相关信息 - 仅适用于 Amazon EC2。
是否可以在 lightsail 实例上发布 cron 作业,还是需要更改为 EC2?
【问题讨论】:
标签: php cron amazon-lightsail
8 小时后回答我自己的问题:可以在 Amazon Lightsail 实例上发布 cron 作业
这是一个运行 PHP 脚本的工作示例:
在 /home/bitnami/ 中创建一个名为“projects”的文件夹,并创建一个名为 Hello World 的简单 .php 文件:
<?php print("Hello World"); ?>
使用命令crontab -e 访问一个文档,您可以在其中添加将作为您计划的 cron 作业的行。
在文档中添加两行并添加新行:
PATH=/usr/bin:/bin:/opt/bitnami/php/bin:
* * * * * php -f /home/bitnami/projects/HelloWorld.php > /home/bitnami/projects/Out.put
第 1 行 将 php 添加到 cron 路径(Cron 看到的路径与环境变量中给出的路径不同。键入:env 并在控制台中按回车键)。要查看为 cron 提供了哪些环境变量,请将第 2 行替换为:* * * * * env > /tmp/env.output 并查看文件。 第 2 行 是 cron 计划。星号表示:每小时、每天、每月、每年的每一分钟都执行此操作。在 Google 上搜索这个 :) 并将输出到一个名为 Out.put 的文件。
等待 1 分钟,看到 Out.put 已创建并包含 Hello World
如果您遇到 cron 作业无法运行的问题,请查看此故障排除指南:https://*.com/tags/cron/info
希望这会有所帮助。如果没有,请在投票前发表评论!
【讨论】:
如果您使用的是 node.js,您可以通过在您的 crontab 中添加几行来做到这一点。首先,打开crontab
crontab -e
在文件末尾添加这三行。我假设你一直在使用。
PATH=/usr/bin:/bin:/opt/bitnami/nodejs/bin:
@reboot cd /home/bitnami/**THISISYOURFOLDER** && /opt/bitnami/nodejs/bin/forever **NAMEOFYOURAPP.JS**
0 1 * * * sudo reboot
这将在系统重新启动时运行您在 THISISYOURFOLDER 中的应用。此外,我使用此设置将其设置为每天凌晨 1 点重新启动。
要对此进行测试,您可以使用
* * * * * cd /home/bitnami/**THISISYOURFOLDER** && touch myfile.txt
在您的 crontab 中。这需要在一分钟后在您的目标文件夹中创建 myfile.txt。如果不是,您需要更改路径设置。也有区别
sudo crontab -e
crontab -e
在https://crontab.guru/查找时间设置
【讨论】: