【发布时间】:2012-12-13 11:32:55
【问题描述】:
我正在尝试通过 Windows 2003 服务器的计划任务运行 CakePHP Shell 脚本,但我发现该任务无法启动。
当我从命令提示符手动运行它时,它运行良好:
C:\Inetpub\wwwroot\CakePHP\lib\Cake\Console\cake mail read
Scheduled task Run 字段完全相同,Start in 设置为:
C:\Inetpub\wwwroot\tickets\app
Run as 字段设置为具有所有权限的计算机管理员(不是 ISS 用户)
计划任务日志在尝试执行时显示此消息:
“Ticket Mail System.job”(蛋糕)13/12/2012 07:15:00 ** ERROR **
无法启动任务。
具体错误是:
0x80070005:访问被拒绝。
好像是权限问题。
我已尝试为两个用户(IIS 6 用户和 Internet 访客帐户 用户)放弃 lib/Cake/Consol/cake.bat 文件的所有权限,但仍然没有工作。
你知道这可能是什么原因吗?
【问题讨论】:
-
如果您在谷歌上搜索错误代码(“计划任务 0x80070005”),则需要尝试大量故障排除:检查事件日志,确保它以管理员身份运行(您的管理员用户确实是其中的一部分) admin 组),确保任务目录有正确的权限,确保 cmd.exe 有,等等。
-
我已经尝试过那些东西 :)
-
知道了!嗯..您是否尝试过以 IIS 用户身份运行并将该 IIS 用户权限授予 cmd.exe? (不是那个管理员不应该工作......)
-
是的,我试过了 :) 我玩的权限超过了
cmd.exe和cake.bat。没有任何效果。但现在我找到了解决方案。它在我的回答中。
标签: cakephp scheduled-tasks cakephp-2.2 windows-2003-webserver cakephp-2.3