如何在cron中运行php脚本

我发现了很多关于此的问题和文章,但我仍有一些困难。
我正在使用以下命令
/ usr / bin / php home / domain.com / public_html / cron / script.php
我收到以下错误
状态:404 Not Found
X-Powered-By:PHP / 5.2.8
Content-type: text / html </ p>

未指定输入文件。</ p>

我正在使用Cpanel,该文件托管在domain.com/cron/script.php上
Anyideas,谢谢:p </ p>
</ div>

展开原文

原文

I have found many questions and articles about this but i still have some difficulties. I'm using the following command /usr/bin/php home/domain.com/public_html/cron/script.php I receive the following error Status: 404 Not Found X-Powered-By: PHP/5.2.8 Content-type: text/html

No input file specified.

i'm using Cpanel, the file is hosted on domain.com/cron/script.php Anyideas, thanks :p

4个回答



尝试:</ p>

  wget -O  -  http://domain.com/  cron / script.php 
</ code> </ pre>

看看你是否得到了更好的结果。</ p>

编辑:添加“ - O - ” 不将输出写入主文件夹。</ p>
</ div>

展开原文

原文

Try:

wget -O - http://domain.com/cron/script.php

and see if you get a better result.

Edit: added "- O - " to not write output to home folder.

drqn5418
drqn5418 这对我很有用! 因为我的PHP脚本也有一些命令编码来安排电子邮件。 谢谢@Lacqui
大约 5 年之前 回复
duanqin4238
duanqin4238 我可能会工作,但你可能想看看混乱的更好理由的答案。
11 年多之前 回复



在脚本名称上加上一个前导斜杠,即</ p>

  / usr / bin  / php /home/domain.com/public_html/cron/script.php

nn

除非你真的打算通过网络运行脚本,如lacqui的回答, 和</ em>你不介意随机的第三方能够随时运行它,你没有理由把它放在你的public_html目录中; 恰恰相反。</ p>
</ div>

展开原文

原文

Put a leading slash on the script name, i.e.

/usr/bin/php /home/domain.com/public_html/cron/script.php

Unless you actually intend to run the script through the web, as in lacqui's answer, and you don't mind random third parties being able to run it any time they like, there's no reason you should put it inside your public_html directory; quite the opposite.

doubo1871
doubo1871 该作业不会在非公用文件夹中运行。 例如/home/username/etc/cron.php不起作用,但如果放在公共文件夹中它可以工作。
6 年多之前 回复
douwenan9849
douwenan9849 实际上这可能不起作用。 你最好用cd /home/domain.com/public_html/cron/&& / usr / bin / php script.php来正确设置工作目录
大约 11 年之前 回复
douliandan7340
douliandan7340 只有当你不确定它还没有先运行时。 使用您的数据库创建一个警卫“CRON最后开始于”时间戳。 如果时间戳是X分钟/小时,那么在你的cron中不要运行。
11 年多之前 回复
doupang5433
doupang5433 我会在这里添加,因为它可能对OP来说并不明显:随机的第三方能够“随时”运行它,我也意味着'多次一秒'。 由于CPU密集型和内存密集型任务通常是cron作业的候选者,因此您可能会向人们提供容易的拒绝服务攻击。
11 年多之前 回复
dsb12300
dsb12300 关于不公开脚本的好处。
11 年多之前 回复



我意识到这是一个古老的问题,你可能已经找到了解决方案,但上面的答案都没有帮助我和我 我在运行cron脚本时遇到了同样的404错误。 </ p>

问题与编写php脚本路径的方式有关。 路径必须从public_html开始,如 / usr / bin / php public_html / public / index.php </ code> </ p>
</ div>

展开原文

原文

I'm realising that it is an old question and that you may have found a solution but none of the answers above helped me and I was getting the same 404 error when I was running a cron script.

The problem was related to the way in which the path to the php script was written. The path must start from public_html like this /usr/bin/php public_html/public/index.php



您可能需要使用称为php-cli的二进制文件而不仅仅是php。</ p>
</ div>

展开原文

原文

You might need to use the binary known as php-cli instead of just php.

dsaj20411
dsaj20411 有些系统会附带一个单独的php-cli,其中包含readline和其他内容。 可以在命令行上派上用场。
大约 11 年之前 回复
duanmao2774
duanmao2774 这是针对Windows的,在* nix中你只需使用/ usr / bin / php。 并提到cron它绝对是* nix的环境。
大约 11 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问