4

非常に単純なサーバー側のGETを実行する従来のASPアプリケーションがあります。

私は何年もの間、何百人ものユーザーに問題なく同じコードを使用してきました。しかし、今では1人のユーザーだけが次のエラーを報告しています。

msxml3.dll error '80072f06'
The host name in the certificate is invalid or does not match

試したシステム(オペレーティングシステムとブラウザのさまざまな組み合わせ)でエラーを再現できません。

また、これは純粋なサーバー側のコードであるため、さらに困惑しています。サーバーは(同じサーバー上の)別のASPページからデータを要求しているため、クライアントブラウザーがどのように重要になるかはわかりません。

問題のあるコードは非常に単純です。

  Set HTTP = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
  URL="https://www.someserver.com/somepage.asp?id=12345"
  HTTP.Open "GET", URL, FALSE, username,password
  HTTP.SetRequestHeader "User-Agent",Request.ServerVariables("HTTP_USER_AGENT")
  HTTP.Send ""

繰り返しになりますが、これは何百人ものユーザーにとっては問題なく機能します。私たちが聞いた問題は1つだけです。

問題のあるユーザーは、Win7(64ビット)とIE9を実行しています(エージェントをユーザーの実際のエージェントに設定しているため)。しかし、エージェントをユーザーの正確な文字列に手動で設定しても、問題を再現することはできません。

何か考えやアイデアはありますか?とても感謝しています!

4

1 に答える 1

4

setOption メソッドと getOption メソッドを使用する必要があります。

これはあなたを助けるはずです:

自己署名証明書を使用した VBA ServerXMLHTTP https 要求

于 2013-01-29T02:23:55.227 に答える