为什么我的 cron 任务可以在命令行中运行,但不能在 PLESK 中运行?

发布于 2024-10-30 21:41:16 字数 477 浏览 4 评论 0原文

我想在另一台专用服务器上设置一个在 PLESK 9 下完美工作的 cronjob,但无法让它在 PLESK 10 下的新专用服务器上工作。我只是不明白为什么。

一些信息:我将 PHP 作为 Apache 模块运行,并且:

whereis php 说:php: usr/bin/php

并且

usr/bin/php -q /var/pathtocronjob

在命令行中完美运行。 然而,当我在 PLESK 的“计划任务”中设置它时,它只是显示

-: /usr/bin/php: 没有这样的文件或目录

我搜索过任何可以帮助我的事情,但就是找不到任何帮助。 任何人都知道为什么这不起作用,当然......如何解决这个问题?

I want to setup a cronjob that worked perfectly under PLESK 9 on another dedicated server, but can't get it to work in my new dedicated server under PLESK 10. I just can't figure out why.

Some info: I have PHP running as Apache module and:

whereis php says: php: usr/bin/php

And

usr/bin/php -q /var/pathtocronjob

works perfectly in command line.
However, when I set this up in PLESK in a "Scheduled task" it just says

-: /usr/bin/php: No such file or directory

I've searched for anything that could help me out, but just can't find any help.
Anyone knows why this isn't working and of course... How to fix this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

二智少女 2024-11-06 21:41:16

请确保包含第一个斜杠 /

您应该将: 替换

usr/bin/php -q /var/pathtocronjob

/usr/bin/php -q /var/pathtocronjob

Please make sure to include the first slash /.

You should replace:

usr/bin/php -q /var/pathtocronjob

with

/usr/bin/php -q /var/pathtocronjob
心病无药医 2024-11-06 21:41:16

可能是某种用于 cron 任务的 chroot shell?查看 管理指南

May be some kind of chrooted shell for cron tasks? Look at Admin guide

风吹雨成花 2024-11-06 21:41:16

您将无法访问比 Plesk 上指定的托管/用户级别更低的级别。这是为了防止用户走出 var/www/vhosts/domein.tld 文件夹。这是内置的安全性,因此用户无法使用漏洞命令扰乱服务器,而只能留在自己的沙箱中。

使用简短的 'php' 而不是 'usr/bin/php'

例如,magento 重新索引命令

    0 */3 * * * php -q httpdocs/shell/indexer.php reindexall

ps:
许多常用的 ssh 命令在 crontab 命令字段中都不起作用!

You won't be able to access lower levels than the hosting/user is asigned on Plesk. This is to prevent user going outside there var/www/vhosts/domein.tld folders. This is a safety built in so user cant mess up the server with exploit commands, but just stay in their own sandbox.

Use the short 'php' instead of 'usr/bin/php'

For example magento reindexing command

    0 */3 * * * php -q httpdocs/shell/indexer.php reindexall

ps:
a lot of the usual ssh commands wont work either in the crontab command field!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文