В моем проекте я использую sftp (https://www.php.net/manual/en/book.ssh2.php) для загрузки файла на удаленный сервер.
Код загрузки файла:
if (!$localStream = @fopen($localFilePath, 'r')) {
throw new Exception("Unable to open local file for reading: $localFilePath");
}
// Remote stream
if (!$remoteStream = @fopen("ssh2.sftp://".$sftp_int."/$savePath", 'w')) {
throw new Exception("Unable to open remote file for writing: $savePath");
}
// Write from our remote stream to our local stream
$read = 0;
$fileSize = filesize($localFilePath);
while ($read < $fileSize && ($buffer = fread($localStream, $fileSize - $read))) {
// Increase our bytes read
$read += strlen($buffer);
// Write to our local file
if (fwrite($remoteStream, $buffer) === false) {
throw new Exception("Unable to write to local file: $savePath");
}
}
НоЯ отслеживаю и вижу скорость загрузки медленно.
Я исследовал и обнаружил: Почему SSH2 SFTP намного медленнее, чем FTP и FTPS?
И: http://phpseclib.sourceforge.net/
Как увеличить скорость загрузки с помощью sftp с PHP?
Пожалуйста, помогите мне. Спасибо