php ftp警告权限

时间:2014-05-17 11:11:29

标签: php ftp

我正在编写一个将显示文件列表并检索/发送文件的类。我有下载问题。我可以连接服务器,显示列表文件,但我无法下载文件。

Warning: ftp_get(index.php): failed to open stream: Permission denied in /var/www/public_html/class.ftp.php on line 51
Warning: ftp_get(): Error opening index.php in /var/www/public_html/class.ftp.php on line 51

当我在我的电脑上使用应用程序和这个帐户ftp时,我没有下载的问题。原则上,我无法更改文件权限,因为我将使用多个ftp。我不明白,当我下载带有应用程序的文件时,为什么我不需要更改权限文件,PHP需要此权限。

代码:

protected function connect()
{
    $this->connect=ftp_connect($this->host);
    $result=ftp_login($this->connect, $this->login, $this->pass);
    if($result){
        ftp_pasv($this->connect, true);
        $this->status=true;
    }
    else $this->status=false;
}
public function download_file($path)
{
    $e=explode('/', $path);

    $last=count($e)-1;
    $file=$e[$last];
    $file='download/'.$file;

    return ftp_get($this->connect, $path, $file, FTP_ASCII); //I tried FTP_BINARY
}

使用:

var_dump($conn->download_file('index.php'));

请参阅:

bool(false)

当然还有错误。

1 个答案:

答案 0 :(得分:0)

好吧我的甜蜜的错误; - )

1)将本地文件更改为服务器文件...

public function download_file($path)
{

    $file='./download/'.$path;
    return ftp_get($this->connect, $file, $path, FTP_BINARY);
}

2)我的本地文件夹“downloads”必须有chmod 777

抱歉