【问题标题】:Setting up a Cron Job on CPanel to executes a PHP script在 CPanel 上设置 Cron 作业以执行 PHP 脚本
【发布时间】:2018-01-02 08:31:24
【问题描述】:

正如标题所暗示的,Cron Job 应该执行一个 php 文件(具体来说是 update.php)。然后 php 文件写入存储在同一目录中的 csv 文件。

我将时间设置为 * * * * * 以便它每分钟执行一次。命令编写如下: php -q /home//public_html/wallboard/update.php 我不相信这会导致任何错误,尽管它似乎也没有写入 CSV 文件。但是,当我在浏览器中访问 update.php 时,它会立即执行并写入 CSV 文件。我对 Cron Jobs 没有经验,我确信存在问题,但我不知道这个问题到底是什么。如果您有任何建议/问题,请告诉我。任何帮助表示赞赏!

当前命令:

* * * * * usr/bin/php -q /home/<user>/public_html/wallboard/update.php

更新.php:

<?php

include('lib/HelpDeskView.php');
include('lib/WallboardDisplay.php');
include('helpdesk.csv');
$helpdesk = new HelpDeskView();
$text="\r\ntest,test,test";
file_put_contents( "helpdesk.csv" , $text, FILE_APPEND);

【问题讨论】:

  • 尝试将php更改为/usr/bin/php
  • 你的相关代码+Linux的完整命令,请贴在这里。
  • 尝试将 update.php 权限设置为 755。
  • 1 - 您可能需要在包含语句中包含完整的目录名称,因为 PHP 在命令行模式下运行时可能不会想到与 Web 服务器运行时相同的起始目录. 2 - 我的托管公司,使用他们自己的控制面板,而不是 cpanel,通过使用文件的完整目录路径/名称而不是使用 /usr/bin/php 和文件名来运行 PHP cronjobs,并通过将 PHP 正确运行#!/usr/local/bin/php.cli 在文件的第一行。 3 - 我的托管公司说要使用权限 775。

标签: php cron cpanel


【解决方案1】:

恕我直言,最好的方法是联系支持人员并询问他们有关命令行语法的信息。


这就是我在我的 linux 服务器上使用 cPanel 的方式。

这运行存储在公共根目录中的 script.php。当然,用你的用户名替换命令行中的&lt;username&gt;

在另一台服务器上,我在行首使用/usr/bin/php 而不是php 的相同命令行,但我知道并非所有服务器都使用相同的命令行。有些在命令行中需要php-cli 而不是php,有些不“喜欢”-f 参数等。所以尝试各种组合。

要找到更多建议,请查看这个 SO 主题:Run a PHP file in a cron job using CPanel

重要的一点:尝试不同的命令时,至少等待一分钟(本例)看看它是否有效,因为 Cron 不会立即触发您的脚本。

【讨论】:

    【解决方案2】:

    尝试在 PHP CLI 中执行相同的命令并检查它是否给您任何错误,您可能缺少 CLI 执行所需的一些库或引用。

    【讨论】:

    • 使用 cpanel 的典型主机不允许 CLI 访问,因此这可能不是一个选项。
    • 在否决答案之前先清除您的问题。
    • @Wh1T3h4Ck5 我知道 cmets 是做什么用的,但我的意思是不要投票和影响某人的声誉,毕竟他们试图帮助你是不对的。我建议的不是断章取义的解决方案。
    【解决方案3】:

    由于您的脚本位于您的 public_html 目录中,您可以将 wget 用于您的 Cron 作业

    wget -O - -q https://yoursite.com/wallboard/update.php
    

    -O - 输出被写入标准输出,在这种情况下它将发送到您在 CPanel 中指定的电子邮件地址

    -q安静模式

    【讨论】:

      【解决方案4】:

      /usr/bin/php -d register_argc_argv=On /home/USERNAME/public_html/DOMAIN/artisan AMIR:HOME

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-10
        • 1970-01-01
        • 2014-03-07
        • 2015-12-13
        • 2014-04-16
        • 2012-06-29
        相关资源
        最近更新 更多