1

お客様は、自分のサーバーでphpプログラムを実行しています。Linuxもあれば、Windowsもあります。プログラムを更新するには、ftpを使用します。最近、FTPサーバー、つまりサーバーを実行している物理マシンを変更しました。
現在、一部のお客様は、更新したい場合に問題が発生します。テストスクリプトを実行すると、次のメッセージが表示されます。

警告:ftp_get()[function.ftp-get]:_testupdate.txt(68バイト)のBINARYモードデータ接続を開いています。65行目のC:\ Programme \ Zend \ Apache2\htdocs_testupdate.phpにあります

パッシブモードとアクティブモード、およびASCIIモードとBINARYモードでファイルをダウンロードしようとしました。しかし、何も変わりません。コードは次のとおりです。

    echo "<br> Testfilegröße wurde richtig ermittelt.";
    $bstat = ftp_get ( $conn_id, "_testupdate.txt", "_testupdate.txt", FTP_BINARY);     #FTP_ASCII oder FTP_BINARY
    $exists = file_exists("_testupdate.txt");

最初はファイアウォールが問題を引き起こす可能性があると思いましたが、テストスクリプトがftpサーバーに接続してログインできるため、これは起こりそうにありません
。問題を解決するために何ができるか誰かが考えていますか?

4

1 に答える 1

2

これを試して:

ftp_pasv($conn_id, TRUE);

ファイアウォールが実際に原因である場合に役立ちます。

それ以外の場合は、ファイルが実際にバイナリまたはASCIIであることを確認してください。このエラーは、間違った場合にスローされます。

于 2012-10-23T15:25:32.790 に答える