如何通过cronjob运行php文件?

如何通过cronjob运行php文件?,php,cron,Php,Cron,我想通过cronjob发送一封自动电子邮件 我制作了一个名为send\u email.php的文件。如果我在浏览器中打开它,电子邮件将成功发送。但当我想通过cronjob打开文件时,会收到一些错误消息: /is/htdocs/user/.../myfolder/send_email.php: line 1: ?php: No such file or directory /is/htdocs/user/.../myfolder/send_email.php: line 3: synt

我想通过cronjob发送一封自动电子邮件

我制作了一个名为
send\u email.php
的文件。如果我在浏览器中打开它,电子邮件将成功发送。但当我想通过cronjob打开文件时,会收到一些错误消息:

   /is/htdocs/user/.../myfolder/send_email.php: line 1: ?php: No such file or directory
   /is/htdocs/user/.../myfolder/send_email.php: line 3: syntax error near unexpected token `'includes/config.php''
   /is/htdocs/user/.../myfolder/send_email.php: line 3: `require('includes/config.php'); '
我在
send_email.php
中的前3行是:

<?php 

require('includes/config.php'); 

从第一条错误消息判断,您可能正在尝试将php脚本作为shell脚本执行。
尝试执行php二进制文件

/usr/bin/php /path/to/your/cron.php

可能需要错误的路径。您需要检查send_email.php相对于cron工作目录的位置。或者你可以用猞猁来做这个

* * * * * lynx -dump http://domain.tld/send_email.php

如何从cron调用脚本?您可以添加cronjob中的行吗?cron命令看起来像什么?您可能需要类似于
/usr/bin/php您的_script.php
而不仅仅是
。。。你的_script.php
你想在你的本地主机或服务器上运行cronjob吗?请告诉我你有哪台服务器,windows/linux,你有没有访问cpanel的权限?谢谢你的回答,我的主机是hosteurope,所以我想它是一台linux服务器。除了php cli,没有必要使用其他东西
php-f/path/to/file.php
我认为路径是可以的,因为我有另一个用于mysqldumper的cronjob
/is/htdocs/user/../myfolder/crondump.pl
工作正常……或者预先编写一个shebang:
#/usr/bin/php
谢谢,但是路径
/is/htdocs/user/
的第一部分是由我的主机预设的。我有另一个到mysql转储程序的cronjob,它使用几乎相同的路径
/is/htdocs/user/../myfolder/crondump.pl
,并且工作正常。好吧,cronjob执行的是一个.pl文件,而不是.php文件。如果不能直接调用php,可以使用web cron,也可以尝试在php cron前面加上#/usr/bin/php告诉bash要使用什么解释器(在本例中为php)prepend=add-in-front。文件的第一行必须是#/usr/bin/php-then