作為一個菜鳥,對於SSL證書,我瞭解不多,只知道用了它網站更安全,所以這次使用SSL證書途中遇到各方面的各種問題,到今天為止終於全部解決。 一、證書格式 前兩天在那什麼雲上面買了個SSL證書,是WoSign的,證書簽發後下載下來有兩個文件,.pem和.key,查詢得知IIS需要.pfx格式的證書文件 ...
作為一個菜鳥,對於SSL證書,我瞭解不多,只知道用了它網站更安全,所以這次使用SSL證書途中遇到了各方面的各種問題,到今天為止終於全部解決。
一、證書格式
前兩天在那什麼雲上面買了個SSL證書,是WoSign的,證書簽發後下載下來有兩個文件,.pem和.key,查詢得知IIS需要.pfx格式的證書文件,於是搜索轉換方法。
搜索結果基本上都是說用OpenSSL來轉換,但是發現網上的資料很零碎,沒有初學者或者完全不瞭解的人也能看懂的資料,於是連蒙帶猜才搞定轉換問題。
1.1安裝OpenSSL
參考博客:http://blog.csdn.net/zh516846937/article/details/40188065
按照上面博客的指導安裝就行了
1.2轉換證書
1.2.1在安裝的時候有一步是編譯,生成靜態庫和動態庫,我生成的是動態的,所以進入out32dll文件夾裡面找到openssl.exe打開(靜態庫進入out32)
1.2.2把.pem文件尾碼改成.crt,並把.crt文件和.key文件複製進入out32dll
1.2.3在openssl.exe打開後的視窗輸入命令pkcs12 -export -out 輸出證書名.pfx -inkey 證書KEY.key -in 證書.crt,回車後會要求輸入密碼,再確認密碼後就生成成功
二、部署網站
在IIS導入證書後臺,給網站綁定了https訪問
經測試發現360瀏覽器可以訪問,谷歌瀏覽器不能訪問,谷歌瀏覽器報錯,該網站不能提供安全連接。
尋找沃通的技術支持後得知有兩個問題:
一是證書鏈不完整,這個經他們技術人員操作解決了
二是SSL 漏洞,他們有教程,安裝教程很好解決
這兩個問題完成後谷歌瀏覽器能正常訪問了。
對於正常的SSL證書的安裝使用到此就結束了,但是對於我的項目來說還沒有結束。
因為項目結構Web端是純html,api是用的WebApi,所以分別部署了兩個網站,而購買SSL證書時腦抽買的是只能支持一個功能變數名稱的,這樣api的功能變數名稱就得不到保護,於是只能考慮把兩個項目合在一起。
首先嘗試的是直接把web端的頁面等複製進api項目,設置好首頁等後發現谷歌等瀏覽器訪問沒問題,IE瀏覽器訪問會直接變成下載html文件,努力了許久沒搞好,只好按照MVC規則新建所有頁面再複製入相應內容,這樣改動實在很大。
這時候調試好了發佈上去終於IE也正常了。
但是在整理代碼的時候突然發現調試時WebApiConfig裡面會報錯:URL不能以"/"或“~”為首尾……,以為是哪兒設置錯了,找了好一會兒發現網上資料幾乎沒有對症的,突然想到新建一個webapi項目,把主要文件複製進入測試發現沒有問題,於是猜測可能不經意間損壞了項目文件(但是完全沒有這方面的記憶)
都是一些亂七八糟的問題,但是話費了很大精力。