在共享服务器OVH上执行Symfony Command作为cron

时间:2017-06-17 18:43:24

标签: php symfony cron ovh

我想在OVH共享服务器上执行àSymfony3命令,但我仍然收到错误。

我创建了一个sh脚本“verifyCampaign.sh”并输入 www / cron

#!/bin/bash
cd /home/siteName/www/
/usr/local/php7.0/bin/php /home/siteName/www/bin/console app:verify-campaign

我知道OVH找到我的脚本,因为我在cron日志中有这些信息:

[2017-06-17 04:38:01] ## OVH ## START - 2017-06-17 04:38:01.601227 executing: /homez.76/siteNamesrd/./www/cron/verifyCampaign.sh 
[2017-06-17 04:38:01] ## OVH ## ERROR command '/homez.76/siteNamesrd/./www/cron/verifyCampaign.sh' must be executable
[2017-06-17 04:38:01] 
[2017-06-17 04:38:01] ## OVH ## END - 2017-06-17 02:38:01.725728 exitcode: 255

但为什么它告诉我这个错误?当我在控制台上尝试我的命令时,它运行良好

修改

在chmod 777中,我遇到了一个新错误:

[2017-06-20 14:53:01] ## OVH ## START - 2017-06-20 14:53:01.977160 executing: /homez.76/siteName/./www/cron/verifyCampaign.sh 
[2017-06-20 14:53:01] /homez.76/siteName/./www/cron/verifyCampaign.sh: line 2: cd: /home/siteName/www/: No such file or directory
[2017-06-20 14:53:01] Could not open input file: /home/siteName/www/bin/console
[2017-06-20 14:53:01] 
[2017-06-20 14:53:01] ## OVH ## END - 2017-06-20 12:53:02.165789 exitcode: 1

我现在要尝试不同的道路。所以它似乎是脚本上正确的问题

编辑 - 提高答案

如接受的答案所述,问题是脚本文件的访问权限。

对于另一个问题,在ovh中,访问您的文件夹的正确路径是:

/homez.id/SiteUserName/www/

在我的情况下id = 76

因此,如果你想执行Symfony3命令,你必须这样做:

#!/bin/bash
cd /homez.id/siteUserName/www/
/usr/local/php7.0/bin/php /homez.id/siteUserName/www/bin/console your:commandName

在我的情况下,您的:commandName = app:verify-campaign

1 个答案:

答案 0 :(得分:1)

它告诉你脚本没有设置执行位,允许运行它的cron用户执行它。你需要使用chmod来做到这一点。这可能有点矫枉过正,但是:

chmod ugo+x verifyCampaign.sh

肯定会照顾它。