我有运行xampp(1.7.7)的Server 2008 R2。 我尝试使用sftp和phpseclib。 当我手动加载php页面时,一切正常。 当通过cronjob加载页面时,我在远程计算机上获得0字节文件。
这是php代码:
$sftp = new Net_SFTP('remote.server');
if (!$sftp->login('user', 'password')) {
exit('Login Failed');
}
$sftp->put($filename.".DAT", $filename.".DAT", NET_SFTP_LOCAL_FILE);
这里是cronjob的.bat:
@E:\WSERVER\xampp\php\php.exe -f E:\WSERVER\xampp\htdocs\sites\anq\file.php
可能是什么问题? 无论哪种方式本地文件都很好......
关于j
答案 0 :(得分:0)
Net_SFTP :: put()调用的第二个参数如下:
$filename.".DAT"
我的猜测是,这是一个相对路径,并且cron作业(或Windows Scheduler任务)正在耗尽的目录与手动运行时的目录不同。
即。解决方案是使第二个参数成为文件位置的绝对路径。