当脚本在 cron 上运行时,FTP 连接失败,手动运行可以正常工作


FTP connection fails when script runs on cron, where working correctly for manual run

我写了一个脚本来连接到FTP,当我手动运行时它可以正常运行,但是当我将其作为cron运行时,它在连接到ftp时给我错误。连接不成功。

    //--------------------------- FTP Credentials --------------------------------------------//
$ftp_server='154.0.174.248';
$ftp_user_name="*******";
$ftp_user_pass="********";
//--------------------------- set up basic connection -------------------------------------//
$conn_id = ftp_connect($ftp_server) or die('Connection Unsuccessful');
//------------------------- login with username and password ------------------------------//
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
ftp_pasv($conn_id, true);

使用 crontab 执行文件时,您应该在脚本的最顶部添加文件的类型。在您的情况下,您应该在文件的最顶部添加#!/usr/bin/php

#!/usr/bin/php
<?php
    //code
?>

为什么要添加它?当 cron 要执行文件时,它需要知道文件类型是什么,在此方法中你可以声明它。

相关文章: