1

Ubuntu 12.04(Precise Pangolin)とMonoを使用して、C#2.0で記述およびコンパイルされたクライアントアプリケーションを正常に参照し、ローカル開発サーバー上のWebサービスを呼び出しましたが、更新しません。次のようなURLへの呼び出し

https://192.168.1.22/service.asmx

次に、このWebサービスを同じ構成でAmazon EC2の本番サーバーにアップロードしますが、Ubuntu12.04を更新します。クライアントアプリケーションでは、URLをに変更するだけhttps://myserver.com/service.asmxです。

しかし、私のクライアントアプリケーションは接続できませんでした。デバッグメッセージは次のように表示されました。

トランスポートストリームから予期しないEOFまたは0バイトを受信しました。

WebブラウザでWebサービスの説明ページを開くと、Webサービスが正常に機能していることを意味します。

私はこれを修正するのに1時間かかりましたが、運がありませんでした。最後に、2台のサーバーの違いを見つけました。

ブラウザでは、ローカルサーバーのSSL接続はTLS 1.0を使用していますが、EC2サーバーのSSL接続はTLS1.1を使用しています。グーグルで検索したところ、.NETFramework2.0はTLS1.0とそれのみをサポートしていることがわかりました。

Apache2でTLS1.1を無効にする方法が見つかりませんでした。

これがUbuntu12.04のOpenSSLのバグなのか、Monoまたは.NETのバグなのかわかりません。私はまだ解決策を見つけようとしています。

4

0 に答える 0