日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

HTTPS 证书配置

發(fā)布時(shí)間:2025/4/16 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HTTPS 证书配置 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

HTTPS 證書配置

現(xiàn)在阿里云和騰訊云都支持申請(qǐng) HTTPS 證書,這里不再提,有需要的可自行g(shù)oogle解決方案。 本文主要介紹的是通過 letsencrypt 申請(qǐng)免費(fèi)的HTTPS證書,并將其配置在IIS WEB服務(wù)器上。

0. 申請(qǐng) HTTPS 證書

在 https://www.sslforfree.com/ 申請(qǐng)證書,這里我以 http://sparktodo.weihanli.xyz/ 為例申請(qǐng)?jiān)O(shè)置

  • 輸入要使用HTTPS的證書地址,生成證書及驗(yàn)證文件

    ?

  • 驗(yàn)證域名

    驗(yàn)證域名支持三種方式,FTP ,文件驗(yàn)證,DNS驗(yàn)證

    ?

    如果有FTP,推薦使用FTP驗(yàn)證,簡(jiǎn)單快捷;如果沒有FTP推薦使用文件驗(yàn)證,如果端口號(hào)不是80端口請(qǐng)使用DNS驗(yàn)證方式。

    ?

    ?

    這里以 文件驗(yàn)證 為例驗(yàn)證域名,點(diǎn)擊 “Manually Verify Domain”按鈕獲取驗(yàn)證文件,點(diǎn)擊下面的鏈接下載文件

    在網(wǎng)站根目錄下創(chuàng)建文件夾,并將驗(yàn)證文件放在里面

    windows 創(chuàng)建目錄:

    mkdir .well-known\acme-challenge

    linux 創(chuàng)建目錄:

    mkdir -p .well-known/acme-challenge

    如果你用的是IIS作為WebServer,那么還需要設(shè)置一下MIME類型,具體方法如下:

    ?

    ?

    點(diǎn)擊下面的驗(yàn)證鏈接,如果沒有錯(cuò)誤就證明已經(jīng)驗(yàn)證通過可以直接下載證書

    【asp.net core項(xiàng)目需要另外設(shè)置】 針對(duì) asp.net core項(xiàng)目,我們需要將創(chuàng)建的文件放在 wwwroot 目錄下,并且在程序中添加對(duì)沒有擴(kuò)展名的文件的支持, 添加對(duì)沒有擴(kuò)展名的文件的支持的代碼如下:

    在 StartUp 中的 Configure 方法中配置

    1 app.UseStaticFiles(new StaticFileOptions() 2 { 3 ServeUnknownFileTypes = true 4 });

    ?

  • 下載

    ?

    驗(yàn)證通過之后下載我們的證書,下載之后會(huì)是一個(gè)包含三個(gè)文件的壓縮包,三個(gè)文件中有兩個(gè)crt和一個(gè)private key, 這可能并不是你想到的證書格式,那么你需要轉(zhuǎn)換證書格式,如果你使用 IIS 作為WebServer,windows 不識(shí)別 private key,所以需要把證書合成一個(gè) *.pfx 的證書

  • 1. 證書格式轉(zhuǎn)換

    下載的證書可能并不是你需要的格式,建議下載 openssl 進(jìn)行轉(zhuǎn)換,如果是linux系統(tǒng),那會(huì)比較容易直接從官網(wǎng)下載。

  • 下載openssl

    如果是windows系統(tǒng)可能會(huì)有一些繁瑣,官方不提供windows版的,從這里下載windows版openssl

    • 64位系統(tǒng)推薦下載這個(gè):https://slproweb.com/download/Win64OpenSSL_Light-1_1_0e.exe
    • 32位系統(tǒng)推薦下載這個(gè):https://slproweb.com/download/Win32OpenSSL_Light-1_1_0e.exe

    下載并安裝好之后,建議配置系統(tǒng)環(huán)境以更方便的使用

  • 轉(zhuǎn)換證書格式

    • 轉(zhuǎn)換為 *.pfx 格式

      openssl pkcs12 -export -in certificate.crt -inkey private.key -out certificate.pfx

      執(zhí)行命令會(huì)提示你輸入密碼,輸入之后會(huì)要求確認(rèn)一下密碼(無回顯),密碼在導(dǎo)入證書時(shí)會(huì)用到

      ?

    • 轉(zhuǎn)換為 *.pem 格式

      openssl rsa -in private.key -text > private.pem
  • 2. WEB服務(wù)器配置 HTTPS 證書

    這里以 IIS 部署為例,更多web服務(wù)器配置HTTPS請(qǐng)參考證書配置(https://www#wosign#com/Docdownload/index.htm)[將#替換為.]

    雙擊*.pfx證書文件即可導(dǎo)入證書,按提示導(dǎo)入證書即可,導(dǎo)入成功之后,配置IIS Web服務(wù)器:

    ?

    配置 HTTP 自動(dòng)轉(zhuǎn)換為 HTTPS,可參考以下解決方案:

    • http://stackoverflow.com/questions/46347/iis7-http-https-cleanly
    • https://blogs.msdn.microsoft.com/kaushal/2013/05/22/http-to-https-redirects-on-iis-7-x-and-higher/

    最好的解決方案是在代碼里配置,如果是 HTTP 就重定向到 HTTPS

    我的配置方式是這樣的:

  • 要求 SSL
  • ?

    ?

  • 自定義錯(cuò)誤頁(yè)面
  • ?

    3. Summary

    生活處處是驚喜,轉(zhuǎn)角遇到坑。

    寫這篇文章的時(shí)候,第一次配置主要是 openssl 的安裝搞了好長(zhǎng)時(shí)間,第二次配置比第一次順利一些,但是也遇到了新的問題,第一次配置的是一個(gè)ASP.NET項(xiàng)目,第二次是一個(gè)ASP.NET Core項(xiàng)目,第二次文件驗(yàn)證不成功,后來修改了代碼之后終于可以了,第二次還配置了強(qiáng)制HTTPS,第一次的項(xiàng)目配置的是前臺(tái)功能允許使用HTTP,但是后臺(tái)功能要求必須是HTTPS,第二次是全站HTTPS。

    如果看完還有什么問題或者覺得文章有什么問題,歡迎指出,歡迎聯(lián)系我 weihanli@outlook.com

    生命不息,踩坑不止。

    總結(jié)

    以上是生活随笔為你收集整理的HTTPS 证书配置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。