为什么 PHP 脚本不能通过命令行或任务计划程序在服务器 2008 上写入文件?

为什么 PHP 脚本不能通过命令行或任务计划程序在服务器 2008 上写入文件?

我有一个 PHP 脚本。当我使用浏览器时,它运行良好。它会在同一目录中写入一个 XML 文件。该脚本运行大约需要 60 秒,生成的 XML 文件大约为 16 MB。

我在 Server 2008 64 位上通过 FastCGI 运行 PHP 5.2.13。

我在任务计划程序中创建了一个任务来运行 c:\php5\php.exe “D:\inetpub\tools\something.php”

没有返回错误,但没有创建文件。

如果我在命令行运行相同的路径和参数,它不会出错,也不会创建文件。

我正在做一个简单的 fopen fwrite fclose 来将 php 变量的内容保存到 .xml 文件,并且只有在通过浏览器运行脚本时才会创建该文件。

谢谢

答案1

最有可能是权限问题。首先尝试使用“以管理员身份运行”选项启动命令提示符,然后查看是否创建了文件。如果是,则说明只是权限问题。

哪个用户正在运行计划任务?您需要授予该用户适当的权限,以便其可以写入您想要在其中创建文件的文件夹。

您是否已打开 UAC?

相关内容