繁体   English   中英

通过ftp进行PHP同步时出现错误

[英]PHP Sync over ftp giving errors

因此,我得到了这段代码,该代码应该是从远程主机上的/ upload /文件夹中获取所有内容并将其复制到文件所在的位置。 代码如下:

<?php 
$ftp_server = "server"; 
$conn_id = ftp_connect ($ftp_server) 
    or die("Couldn't connect to $ftp_server"); 

$login_result = ftp_login($conn_id, "user", "password"); 
if ((!$conn_id) || (!$login_result)) 
    die("FTP Connection Failed"); 

ftp_sync ("/update/"); 

ftp_close($conn_id);  

function ftp_sync ($dir) { 

    global $conn_id; 

    if ($dir != ".") { 
        if (ftp_chdir($conn_id, $dir) == false) { 
            echo ("Change Dir Failed: $dir<BR>\r\n"); 
            return; 
        } 
        if (!(is_dir($dir))) 
            mkdir($dir); 
        chdir ($dir); 
    } 

    $contents = ftp_nlist($conn_id, "."); 
    foreach ($contents as $file) { 

        if ($file == '.' || $file == '..') 
            continue; 

        if (@ftp_chdir($conn_id, $file)) { 
            ftp_chdir ($conn_id, ".."); 
            ftp_sync ($file); 
        } 
        else 
            ftp_get($conn_id, $file, $file, FTP_BINARY); 
    } 

    ftp_chdir ($conn_id, ".."); 
    chdir (".."); 

} 
?>

当我在一个空文件夹中运行它时,它会执行预期的操作。 但是,如果我在包含/ update /文件的文件夹中运行它,则会给我两个错误。 错误在下面列出

Warning: mkdir() [function.mkdir]: Permission denied in /home/limited/public_html/download.php on line 25

Warning: chdir() [function.chdir]: No such file or directory (errno 2) in /home/limited/public_html/download.php on line 26

假设只用新文件覆盖文件,而不抛出错误。

谢谢

脚本(实际上是运行脚本的用户)无权在服务器上创建新文件夹, 或者您试图复制文件并创建新文件夹的文件夹均不受用户限制。

请尝试使用具有较高权限的用户,或将写入权限添加到要将文件同步到的文件夹中

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM