PHP ftp_put - 找不到文件或没有访问权限

时间:2009-08-28 20:49:48

标签: php ftp

在使用ftp_put时,如何处理不在当前目录中的文件?这段代码试图上传我知道存在的文件,但它总是会出现以下错误:

“警告:ftp_put()[function.ftp-put]:在/path/to/files/domains/mydomain.com/html/scriptfile.php上未执行请求的操作,找不到文件或无法访问。 1337"

这是剪辑:

$file_name = $this->GetFileName();

  if ($file_name)
  {
    $resource = ftp_connect('ftp.remoteftpserver.com');    

    if ($resource && ftp_login($resource, $username, $pass))
    {
      ftp_pasv($resource, true);
      //UPLOAD_DIRECTORY == '/IN' (it really exists, I'm sure)
      //ORDER_DIRECTORY == /home/domains/mydomain.com/orders (came from $_SERVER['DOCUMENT_ROOT']
      ftp_put($resource, UPLOAD_DIRECTORY . '/' . $file_name, ORDER_DIRECTORY . '/' . $file_name, FTP_ASCII);

      ftp_close($resource);
    }
    else
    {
      echo "FTP Connection Failed!";
    }

  }

1 个答案:

答案 0 :(得分:1)

检查远程文件的权限。确保$ username具有对该文件的写访问权。确保您对父目录具有执行权限。