>  기사  >  백엔드 개발  >  ftp_fput脚本在本地可以在服务器上就不行

ftp_fput脚本在本地可以在服务器上就不行

WBOY
WBOY원래의
2016-06-06 20:32:311402검색

因为是虚拟空间,无法修改php.ini文件,使用ftp上传大的视频文件到远程服务器,脚本如下:

<code>$ftp_server= "xxxx.xxxx.com";
$ftp_user_name= "user";
$ftp_user_pass= "pass";
$local_file = "D:/Lyb_0/zmsgx.mp4";        //本地文件
$server_file = "htdocs/videos/zmsgx.mp4";  //待上传后文件所在路径
$conn_id = ftp_connect($ftp_server);         //联接FTP
$login_result = ftp_login($conn_id,$ftp_user_name,$ftp_user_pass) or die("Login error");  //登录
$fp=fopen($local_file,"r");
ftp_pasv($conn_id, true);   //开启被动模式传输
//上传参数
if(ftp_fput($conn_id,$server_file,$fp,FTP_BINARY)) {
    echo "Successfully uploaded $server_file\n";
}else{
    echo "There was a problem while uploading $file\n";
}
//关闭连接
ftp_close($conn_id);
fclose($fp);
</code>

在本地服务器上测试能传到远程服务器,但是这个脚本传到远程服务器上就不行了。

回复内容:

因为是虚拟空间,无法修改php.ini文件,使用ftp上传大的视频文件到远程服务器,脚本如下:

<code>$ftp_server= "xxxx.xxxx.com";
$ftp_user_name= "user";
$ftp_user_pass= "pass";
$local_file = "D:/Lyb_0/zmsgx.mp4";        //本地文件
$server_file = "htdocs/videos/zmsgx.mp4";  //待上传后文件所在路径
$conn_id = ftp_connect($ftp_server);         //联接FTP
$login_result = ftp_login($conn_id,$ftp_user_name,$ftp_user_pass) or die("Login error");  //登录
$fp=fopen($local_file,"r");
ftp_pasv($conn_id, true);   //开启被动模式传输
//上传参数
if(ftp_fput($conn_id,$server_file,$fp,FTP_BINARY)) {
    echo "Successfully uploaded $server_file\n";
}else{
    echo "There was a problem while uploading $file\n";
}
//关闭连接
ftp_close($conn_id);
fclose($fp);
</code>

在本地服务器上测试能传到远程服务器,但是这个脚本传到远程服务器上就不行了。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.