PHP-ftp\u挂起

PHP-ftp\u挂起,php,ftp,Php,Ftp,我试图在PHP CLI中使用FTP下载一个文件。我无法访问正在下载的服务器 这里有一些关于我的系统的信息 $ php -v PHP 5.5.12 (cli) (built: Aug 16 2014 11:36:51) (DEBUG) $ cat /etc/*-release NAME="Red Hat Enterprise Linux Server" VERSION="7.0 (Maipo)" ID="rhel" ID_LIKE="fedora" VERSION_ID="7.0" PRET

我试图在PHP CLI中使用FTP下载一个文件。我无法访问正在下载的服务器

这里有一些关于我的系统的信息

$ php -v

PHP 5.5.12 (cli) (built: Aug 16 2014 11:36:51) (DEBUG)

$ cat /etc/*-release

NAME="Red Hat Enterprise Linux Server"
VERSION="7.0 (Maipo)"
ID="rhel"
ID_LIKE="fedora"
VERSION_ID="7.0"
PRETTY_NAME="Red Hat Enterprise Linux Server 7.0 (Maipo)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:redhat:enterprise_linux:7.0:GA:server"
HOME_URL="https://www.redhat.com/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"

REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 7"
REDHAT_BUGZILLA_PRODUCT_VERSION=7.0
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"
REDHAT_SUPPORT_PRODUCT_VERSION=7.0
Red Hat Enterprise Linux Server release 7.0 (Maipo)
Red Hat Enterprise Linux Server release 7.0 (Maipo)
这是密码

$ftpconn = ftp_connect(FTP_HOST);
ftp_set_option($ftpconn, FTP_TIMEOUT_SEC, 86000);
$ftplogin = ftp_login($ftpconn, FTP_USER, FTP_PASS);
ftp_pasv($ftpconn, true);
$list = ftp_nlist($ftpconn, FTP_PATH);
foreach($list as $file){
    ftp_get($ftpconn, DOWNLOAD_PATH . DIRECTORY_SEPARATOR . $file, $file, FTP_BINARY)
}
当脚本点击ftp_get时,将使用正确的名称创建文件,但随后它将在ftp_set_选项中指定的时间内挂起。PHP从不向文件写入任何内容

我已经为它递归所在的根文件夹设置了777权限。我还以root用户身份运行PHP CLI

sudo php /path/to/php/file.php
这是PHP无法写入文件的问题吗?为什么它没有抛出任何错误?当达到超时时,ftp_get函数只返回false


非常感谢您的帮助。

问题是由Amazon AWS实例引起的,某些实例更改了网络接口的MTU

解决方案非常简单,只需发出以下命令:

sudo ifconfig eth0 mtu 1500