XMLHTTPでSSLでPOSTするには?

解決


redapple  2004-10-21 08:42:22  No: 86125

初めて書き込みます。ROMでしたが、お世話になっております。
過去ログをおおいに参考にさせていただき、XMLHTTP POSTでファイルをサーバ側に送信するプログラムが動くようになっています。

しかし、SSL対応することになり、Open時のサーバプログラムのプロトコルをhttpsに変更するとSendでエラーになってしまいます。
ON Errorで指定したハンドラにとび、Err.Numberは-2146697208ですが、原因がわかりません。SSLについてはあまりわかってないので、他になにかすることがあるのでしょうか?

何かわかる方がいらっしゃいましたら、ヒントだけでもよろしくお願いいたします。


魔界の仮面弁士  2004-10-21 12:23:09  No: 86126

-2146697208 という事は、&H800C0008 ですね。
『0x800C0008』で検索して見ると、何か情報が見つかるかも(見つからないかも)…。

さしあたっては、
・クライアントのシステム日付がずれていないか。
・電子証明書の内容に間違いは無いか(サーバ名の間違い、期限切れなど)。
・そのページは、ブラウザにて表示させる事はできるのか。
・XMLHTTP と ServerXMLHTTP とで、結果に違いはあるか。
などを確認してみてください。


redapple  2004-10-21 23:36:45  No: 86127

魔界の仮面弁士様、ありがとうございました。

エラーはセキュリティ関連のエラーでした。ブラウザにて表示はできるのですが、SarverXMLHTTPでやってみると、今度は、-2147012851(0x80072f0d)となり、「証明書が有効でない」というエラーになりました。

0x80072f0dで検索すると、同じような方がいらっしゃいました。CAに認証
してもらった証明書でないとだめなのか?ということで終わっていました、
私が使っているのも、今はまだ認証されたものものではないです。

その点でしょうか?


魔界の仮面弁士  2004-10-22 01:41:25  No: 86128

まず、該当ページをブラウザで開き、電子証明書の内容を確認してください。

1) 有効期間
2) サーバー名(発行先)
3) 認証機関名(発行者)

もし、証明書の内容に問題があれば、警告が表示されます。
# 正しく https で接続できるのであれば、IEの右下にアイコンが
# 表示されると思います。

たとえば、そのサイトにIPアドレスで接続したりすると、
証明書内の発行先サイト名の情報と違ってしまうため、
接続エラーになります。

また、信頼済みでは無い発行者にて作成された証明書の場合も、
接続時にエラーになるかと思います。(独自発行の証明書であっても、
それを「信頼」してある場合は大丈夫です)

なお、サーバ証明書ではなく、クライアント証明書を利用する場合には
下記を参考にしてみてください。
http://support.microsoft.com/default.aspx?scid=kb;ja;301429


redapple  2004-10-23 09:40:14  No: 86129

魔界の仮面弁士様、丁寧な回答をいただき、ありがとうございました。

httpでは見れるファイル、と言ってましたが、警告が出ていました。
ちゃんとした電子証明書をこれから用意して、やってみます。
確認はこれからですが、原因はわかりましたので、解決といたします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加