我支持通過HTTPS連接到支付網關的傳統ASP應用程序。直到最近還沒有問題。幾天前,最新的更新安裝在服務器上(Windows Server 2003),導致網站中斷。代碼片段如下。無法將HTTPS與ServerXMLHTTP對象配合使用
Dim oHttp
Dim strResult
Set oHttp = CreateObject("MSXML2.ServerXMLHTTP")
oHttp.setOption(2) = 13056
oHttp.open "POST", SOAP_ENDPOINT, false
oHttp.setRequestHeader "Content-Type", "application/soap+xml; charset=utf-8"
oHttp.setRequestHeader "SOAPAction", SOAP_NS + "/" & SOAP_FUNCTION
oHttp.send SOAP_REQUEST
下面是錯誤對象的轉儲: -
數量:-2147012852 描述:證書才能完成客戶端認證 消息:一個證書才能完成客戶端認證
起初我以爲是因爲支付網關的SSL證書沒有被認證,或者他們需要客戶端證書。我在服務器上的瀏覽器中測試了URL,並且它沒有錯誤地正確顯示,並確認支付網關服務器不需要客戶端證書。
我不知所措。我所做的所有研究都讓我無處可尋。我甚至嘗試#1以下發現: -
Getting XMLHTTP to work with HTTPS
最後一個說,一個客戶端證書是由XMLHTTP要求即使服務器並不需要它,並指出知識庫文章關於如何安裝一個,但已經過時並且不起作用。
我在猜測網關的SSL證書現在由不在您的服務器的可信根權限列表中的某個人提供,並且您需要像curl的'CURLOPT_SSL_VERIFYPEER'這樣的參數。如果我找到任何東西,我會回來。 – 2012-02-09 17:19:06
你列出的第一個問題的答案是我正在尋找的,應該爲你工作。 – 2012-02-10 09:58:04
我是系統管理員,他正在藉此手。第一個問題的答案並不能解決我害怕的問題。事實上,該選項已經在上面問題中發佈的代碼中設置。爲了補充這一點,至少有3臺獨立的服務器發生這種情況,最近沒有發現任何配置更改,除非在問題發生後昨天/今天安裝的Windows更新被禁止。之前的最新更新是在11月下旬。 – ThatGraemeGuy 2012-02-10 13:33:43