Windows 计划任务不适用于 PHP 脚本

标签 windows cron scheduled-tasks

我每天早上 9 点使用 Windows Server 2003 尝试执行一个 PHP 脚本。这是运行中的命令:

"C:\Program Files\Zend\ZendServer\bin\php.exe"C:\Program Files\Zend\Apache2\htdocs\signout\teachernotify.php

它应该执行上面的 PHP 脚本,它应该给我发电子邮件,但它不起作用。通过浏览器可以访问上面的脚本,但不能通过计划任务访问。

当我通过任务计划程序运行它时,它就像发生了什么一样,但它似乎没有工作。

有什么建议吗?

谢谢

最佳答案

听起来可能是权限问题。当通过 Web 浏览器通过 Apache 运行时,权限将基于 Apache 在其下运行的任何权限。作为计划任务,权限基于为任务指定的用户。

确保在任务设置对话框的“运行方式”字段中指定的用户有权发送电子邮件。

根据您最近的评论,问题似乎是文件名需要用双引号引起来。我在最初的问题中没有注意到这一点。

"C:\Program Files\Zend\ZendServer\bin\php.exe" "C:\Program Files\Zend\Apache2\htdocs\signout\teachernotify.php"

关于Windows 计划任务不适用于 PHP 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4881735/

相关文章:

java - 在 Mac 和 Windows 上从 swing 打印 - Postscript 支持在哪里?

windows - 在远程应用程序上切换输入语言

php - Cron Job 循环没有从 mysqli 对象中获取任何信息,但 print_r 表示有行;在浏览器中运行时完美运行

python - 如何为 apscheduler 指定 'logger'

Windows 命令行界面 : Run command from within another command

PHP 参数选项错误未找到 r

ruby-on-rails - rails 5 : Cron jobs using Whenever not running

windows - 执行批处理文件时出现 `The application failed to initialize properly`/3221225794 错误

java - ScheduledExecutorService 每次都开始晚

windows - 生产中用于内部系统身份验证的自签名证书的替代选项是什么