首頁  >  文章  >  後端開發  >  php ftp_put失敗怎麼辦

php ftp_put失敗怎麼辦

藏色散人
藏色散人原創
2020-07-24 11:12:153473瀏覽

php ftp_put失敗的解決方法:先開啟「Upload/Driver/Ftp.class.php」;然後使用「ftp_pasv($this->link,true);」方法切換到被動模式;最後在客戶端重新上傳文件即可。

php ftp_put失敗怎麼辦

推薦:《PHP教學

PHP Upload FTP磁碟ftp_put 函數上傳失敗問題

2台伺服器,一台做ftp伺服器,一台做web伺服器。

我使用的thinkphp3.2得Upload類,使用了上傳FTP驅動,但每次都說檔案儲存失敗。

我找答案,非同步和同步都測試,都不行,遠端/tmp/ 和ftp目錄也有777權限。

Thinkphp應該很成熟,後面我在官方的文檔找到了一些答案,其中有解釋模式

ftp伺服器主動模式,ftp伺服器被動模式,我使用ftp_pasv($this-> ;link,true); 切換到被動模式,客戶端就可以順利上傳檔案了。

下面是解決方案

Upload/Driver/Ftp.class.php sava函數

public function save($file, $replace=true) {
        $filename = $file['rootPath']. $file['savepath'] . $file['savename'];
        /* 不覆盖同名文件 */
        // if (!$replace && is_file($filename)) {
        //     $this->error = '存在同名文件' . $file['savename'];
        //     return false;
        // }
        ftp_pasv($this->link,true);
        ftp_pwd($this->link);
        $filename=$file['savename'];
        if (!ftp_put($this->link, $filename, $file['tmp_name'],FTP_ASCII)) {
            $this->error = '文件上传FTP错误!';
            return false;
        }
        return true;
    }

以上是php ftp_put失敗怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn