2009-12-16 41 views
1

我正在使用Windows HTTP API來處理C++(而不是.NET)中的Web服務請求,並且對於HTTP請求一切正常。當我使用HttpAddUrl將期望的URL更改爲https://example.com:443/foo/bar時,我的Internet Explorer測試不再連接。我的代碼根本沒有被調用,並且當HTTPS請求進入時,對HttpReceiveHttpRequest的調用沒有完成。如何使用HttpReceiveHttpRequest()使用HTTPS?

我爲自己創建了一個證書頒發機構,它在IE中可見,但我無法弄清楚什麼接下來做。

我需要配置什麼來使HTTP.SYS在HTTPS請求進入時調用我的代碼?

回答

0

您需要在機器存儲中安裝SSL證書(mmc.exe,添加證書管理單元,管理計算機帳戶,導入證書)。然後去httpconfig - 這是一個httpcfg/netsh http的GUI版本,這很容易。我在擁有SSL證書的每臺服務器上都有此工具。一旦配置完成,您的SSL服務器註冊應該正確路由。

+0

試過了。該證書以mmc和IE顯示爲可信任的權威機構。 – jmucchiello 2009-12-17 14:35:49

+0

你是否真的爲自己的CA頒發了證書?此外,請確保您正在管理「計算機帳戶」商店,而不是您的用戶商店。如果沒有在「個人」文件夾下列出的證書(雙擊時列出了私鑰),則表示您做錯了任何事情。 – nitzmahone 2009-12-17 18:20:27

+0

獲得證書後,使用httpconfig將其掛接在IP /路徑對上。 – nitzmahone 2009-12-17 18:21:54