【问题标题】:"Visiting a page" using a cron job使用 cron 作业“访问页面”
【发布时间】:2012-07-06 03:40:57
【问题描述】:

所以我有这个 php 脚本,每次有人访问该页面时都会发送一封电子邮件(打开浏览器,输入 www.example.com/email.php 并点击回车)。我正在尝试找到一种方法,通过共享主机上的 cron 作业定期触发此操作。我可以配置 cron 来运行这个命令: curl --dump http://www.example.com/email.php 但它不发送电子邮件。

我已经确认 php 脚本有效(通过手动访问它)并且 cron 作业运行(我在主机的控制面板上将它设置为“每次 cron 运行时发送电子邮件”),我就是不能让他们一起工作。有什么想法吗?

【问题讨论】:

    标签: linux apache cron cron-task


    【解决方案1】:

    尝试使用 php 运行“页面”(脚本),以便它直接解释文件。

    crontab 条目:
    * * * * * php your/script/location/email.php >/dev/null 2>&1

    【讨论】:

      【解决方案2】:

      只要您的网络脚本通过简单地打开页面(无需用户交互)即可工作,您就可以使用 wget 来模仿请求:

      wget -O /tmp/temp_file.html http://www.example.com/email.php
      

      【讨论】:

      • 感谢本的反馈。现在我收到此错误消息: Connecting to www.example.com|xxx.xxx.xxx|:80... connected。已发送 HTTP 请求,等待响应... 403 Forbidden 2012-07-05 15:05:01 ERROR 403: Forbidden.
      • 嗯,听起来像网络服务器配置错误。您可以在与 cron 相同的系统上的浏览器中打开该网页吗?如果链接/lynx 中没有可用的 gui?也可能需要检查网络服务器上的错误日志。
      • 我在共享主机上,我不确定是否可以从该系统打开它。
      • 啊,好吧,那可能就是它不起作用的原因。如果您的 cronjob 与您的网络服务器在同一台机器上执行,您可以直接从 cron 调用 php 脚本。例如:执行/dir/to/webpath/email.php。否则我没有想法,对不起。
      猜你喜欢
      • 2012-10-26
      • 1970-01-01
      • 2015-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-19
      • 2015-04-15
      • 2019-04-21
      相关资源
      最近更新 更多