2

Nominet EPP テスト ベッドに接続しようとしていますが、「Failed to enable crypto」というメッセージが表示されます。これは、解決策や原因が文書化されていないまれなエラーのようです。

次の行で:

$socket = fsockopen('ssl://testbed-epp.nominet.org.uk', 700, $errno, $errst, 10);

私が得ている正確なエラーは次のとおりです。

Warning: fsockopen() [function.fsockopen]: Failed to enable crypto in /path/classes/nominet_epp.class.php on line 53

Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://testbed-epp.nominet.org.uk:700 (Unknown error) in /path/classes/nominet_epp.class.php on line 53

私が知る限り、OpenSSL は PHP で正常にインストールされています。

OpenSSL support     enabled
OpenSSL Version     OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008

Nominet のドキュメントでは、「安全なサーバーの ID を確認するには、www.verisign.com から無料で入手できる Verisign Class 3 Public Primary Certification Authority のルート証明書が必要です (この証明書は、ほとんどの Web ブラウザーでも配布されています)。 - これが問題になる可能性がありますか?

更新 要求に応じて、エラー値と $socket 自体を var_dump しましたが、それらはすべて false/0 です。fsockopen PHP ドキュメントには、「errno で返された値が 0 で、関数が FALSE を返した場合、connect() 呼び出しの前にエラーが発生したことを示しています。これは、ソケットの初期化の問題が原因である可能性が高いです。

どんな助けでも大歓迎です。

4

1 に答える 1

3

私はまったく同じ問題を抱えていましたが、Nominet ファイアウォールが正しい IP アドレスで更新されていなかったことが原因でした。Nominet コントロール パネルでこれを設定すると、ファイアウォールが完全に更新されるまで 1 時間待つ必要があります。これが完了すると、接続は正常に機能します。

于 2011-04-03T18:53:10.890 に答える