0

最近、PHP用のphpseclib0.3.1ライブラリをダウンロードしました。これにより、SSH経由でEC2インスタンスに接続できるようになります。ただし、「バナータイムアウト」エラーメッセージが表示されます。私が電話するとき:

$ssh = new Net_SSH2('ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com',1234);

最初の引数はパブリックDNSであり、2番目の引数はセキュリティグループに関連付けられたポートです(2つは正しく一致します)。このコマンドを実行すると、次のエラーメッセージが表示されます。

注意:ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.comに接続できません。815行目の...\SSH2.phpでのバナータイムアウト

これに対応します:

    // on windows this returns a "Warning: Invalid CRT parameters detected" error
    // the !count() is done as a workaround for <https://bugs.php.net/42682>
    if (!@stream_select($read, $write, $except, $sec, $usec) && !count($read)) {


        user_error(rtrim("Cannot connect to $host. Banner timeout"), E_USER_NOTICE);

SSH2.phpファイルはhttp://phpseclib.sourceforge.net/から見つけることができます。この問題を解決できない場合、EC2インスタンスに接続するためのPHPの代替手段は何ですか?

ありがとう!

4

1 に答える 1

3

stream_select の前の @ を削除するとどうなりますか? エラーが表示され始めましたか?

具体的には、次のようなエラーが発生していないかどうか疑問に思っています。

http://www.frostjedi.com/phpbb3/viewtopic.php?p=384914#p384914

于 2013-01-10T03:41:32.467 に答える