这是有问题的一行,仅供测试:
var_dump(ftp_connect("ftp.something.com"));
如果我从浏览器调用它,上面的脚本工作正常,响应如下:
resource(1) of type (FTP Buffer)
如果我尝试使用cron或shell调用它,响应是:
bool(false)
所以看起来ftp_connect函数使用cron工作正常,但不知何故它无法连接到外部位置。如果我将ftp地址更改为“localhost”,它再次正常工作:
resource(4) of type (FTP Buffer)
知道可能导致此问题的原因吗?也许是服务器上的防火墙?
答案 0 :(得分:0)
跨代理连接到ftp服务器
$ftp_server = "proxy"; f.e. 123.456.789.10
$ftp_user_name = "username@ftpserver"; f.e. exampleuk@www.example.uk
$ftp_user_pass = "password";
$conn_id = ftp_connect($ftp_server, 2121);
$login_result = ftp_login( $conn_id, $ftp_user_name, $ftp_user_pass );
另一个有用的功能是set_time_limit(0);