Edit report at https://bugs.php.net/bug.php?id=63937&edit=1
ID: 63937 Comment by: dmulder at qnx dot com Reported by: levi_tedder at hotmail dot com Summary: Upload speed 10 times slower with PHP Status: Open Type: Bug Package: FTP related Operating System: Windows PHP Version: Irrelevant Block user comment: N Private report: N New Comment: I have seen the same issue, windows 2008. Upload speeds are much slower than other platforms. I did find this bug reference in libcurl which may be relevant http://sourceforge.net/p/curl/bugs/1188/?page=1 Previous Comments: ------------------------------------------------------------------------ [2013-08-21 21:01:09] r dot pestel at googlemail dot com I have the same problem with cUrl (posting files via HTTP), on Windows Server 2008 and 2012 and Windows 7. Always about 10x slower than possible on the server side (If the server could send 10 mbps I get 1 mbps, even if this is 100% of my capacity). ------------------------------------------------------------------------ [2013-03-31 11:01:41] xeon dot g8 at gmail dot com yes experiencing this same annoying issue aswel linux os, php version latest using php's ftp function to upload files is way slower than using any other ftp client to transfer files from from the same two servers. Not sure why but its very annoying that there doesn't seem to be any way php ini settings to fix this. please fix it soon ------------------------------------------------------------------------ [2013-01-08 07:49:04] levi_tedder at hotmail dot com Description: ------------ If using ftp_put() the upload speed is 10-20 times slower that when using a "regular" FTP client like Filezilla. Uploading with cUrl is equally slow. Tested on multiple PHP versions on several Windows operating systems and on two different networks, all same. Note that downloading (ftp_get()) is equally fast as using Filezilla. Test script: --------------- <?php $conn_id = ftp_connect ( "ftpserver" ); $login_result = ftp_login ( $conn_id, "username", "password" ); if ((! $conn_id) || (! $login_result)) { exit ( "No FTP connection" ); } else { ftp_pasv ( $conn_id, true ); $size = filesize ( $localfile ); $start_timer = time (); if (ftp_put ( $conn_id, "remote file", "local file", FTP_BINARY )) { $end_timer = time (); $time_spent = $end_timer - $start_timer; echo "Transferred $size bytes in $time_spent seconds"; } else { exit ( "FTP upload error" ); } ftp_close ( $conn_id ); } ?> Expected result: ---------------- The file should be transferred at the same speed as when using a "regular" FTP client like Filezilla. Actual result: -------------- Filezilla File transfer successful, transferred 190 923 591 bytes in 170 seconds PHP ftp_put() Transferred 190 923 591 bytes in 1563 seconds ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=63937&edit=1