0

我正在制作一个需要 cron 作业或计划任务来每周发送电子邮件的网站,但问题是我不知道主机是否支持它......

这个网站是一个机构的,我不能把它放在任何其他主机上......

主机正在使用 Apache。

如果不支持,如何在不更改主机的情况下自动发送每周电子邮件?

编辑

我忘了说我是 cron 工作的新手。

4

3 回答 3

1

Apache 与 cron 作业无关,因为在主机上运行的系统必须触发作业(然后可以调用在 apache 下运行的脚本)。

你有 SSH 访问权限吗?
将作业添加到 /etc/crontab 文件或用户的 cron 文件中。

或者您是否有一些管理软件(例如 Plesk)的 Web 界面?
在那里搜索 Cron 作业或计划任务的选项。

如果不是,您可以使用一些外部服务,这些服务将调用您网站上的 URL 来触发类似http://www.setcronjob.com/的工作。

于 2011-12-09T10:39:23.300 回答
1

首先,询问您的主机是否支持 cron 作业(它们应该支持),检查您的面板(如果有),尝试设置一个并查看它是否有效等。

如果没有,一种可能的方法(除了查找将为您调用脚本的外部服务)是向您的代码添加一个函数,每次您的站点访问者进入特定页面时都会调用该函数(例如指数)。在那里,您将检查工作日是否是您要发送电子邮件的日期。如果是,则发送带有标志(例如数据库中的记录)的邮件,以检查它是否已经发送。

当然这不是理想的解决方案,其他所有(实际的 crons 或外部服务)都更好,但既然是解决方案,就值得一提。

于 2011-12-09T10:47:31.157 回答
0

你读过一些关于 cron-daemon 的文档吗?此代码用于检查 cron 是否正在运行

ps -ef | grep cron

之后,您需要创建一个可以处理电子邮件地址提取和发送邮件的文件。

并且还需要在 cron 中添加这样的内容(它只是一个示例,在每个星期日 23 点发送一些东西):

0 23 ? * 0 php /path/sendnewsletter.php
于 2011-12-09T10:42:33.843 回答