如何从我的 PHP 应用程序安全地创建 Cron 作业?
How do I securely create a Cron Job from my PHP App?
我正在构建一个网络应用程序(使用 PHP),它需要为最终用户提供在一系列日期之间每隔 x 小时接收一次更新的功能。我知道您可以使用 "shell" 创建一个 cron 作业。但是,我已在 php.ini 中禁用 shell 以保护我的服务器,以防任何恶意代码进入我的服务器。有没有一种方法可以在不使用系统命令的情况下从我的应用程序安全地创建 cron 作业?
编辑
回应 Halayem 的进一步澄清评论。我系统中的注册用户可以在我的应用程序中设置重复任务,每隔 X 小时向他们的手机号码发送一条 SMS 消息,其中 X 是用户定义的时间。我希望构建一种安全的方式来实现 cron 作业,以便在用户创建任务时每隔 X 小时自动发送一次消息。
您永远不会从代码中动态创建新的 cron 作业,这太疯狂了。你要做的是明确地设置一个 cron 作业,它会经常检查是否有事情要做,并且你保留一个 cron 作业应该做的任务的数据库。
简单示例:如果您的客户可以选择每小时接收一封邮件,那么您可以设置一个 cron 作业,每小时检查一次您的数据库,客户选择接收邮件然后发送这些邮件。
我正在构建一个网络应用程序(使用 PHP),它需要为最终用户提供在一系列日期之间每隔 x 小时接收一次更新的功能。我知道您可以使用 "shell" 创建一个 cron 作业。但是,我已在 php.ini 中禁用 shell 以保护我的服务器,以防任何恶意代码进入我的服务器。有没有一种方法可以在不使用系统命令的情况下从我的应用程序安全地创建 cron 作业?
编辑
回应 Halayem 的进一步澄清评论。我系统中的注册用户可以在我的应用程序中设置重复任务,每隔 X 小时向他们的手机号码发送一条 SMS 消息,其中 X 是用户定义的时间。我希望构建一种安全的方式来实现 cron 作业,以便在用户创建任务时每隔 X 小时自动发送一次消息。
您永远不会从代码中动态创建新的 cron 作业,这太疯狂了。你要做的是明确地设置一个 cron 作业,它会经常检查是否有事情要做,并且你保留一个 cron 作业应该做的任务的数据库。
简单示例:如果您的客户可以选择每小时接收一封邮件,那么您可以设置一个 cron 作业,每小时检查一次您的数据库,客户选择接收邮件然后发送这些邮件。