亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > 使用Go添加HTTPS的實現代碼示例

使用Go添加HTTPS的實現代碼示例

熱門標簽:澳門防封電銷卡 烏魯木齊人工電銷機器人系統 廣東語音外呼系統供應商 長沙ai機器人電銷 地圖標注測試 智能電銷機器人營銷 濮陽自動外呼系統代理 賺地圖標注的錢犯法嗎 福州鐵通自動外呼系統

簡介

現在的網站沒有 HTTPS 都不好意思見人了.

超文本傳輸安全協議(英語:HyperText Transfer Protocol Secure,縮寫:HTTPS;常稱為 HTTP over TLS、HTTP over SSL 或 HTTP Secure)是一種通過計算機網絡進行安全通信的傳輸協議。HTTPS 經由 HTTP 進行通信,但利用 SSL/TLS 來加密數據包。HTTPS 開發的主要目的,是提供對網站服務器的身份認證,保護交換數據的隱私與完整性。這個協議由網景公司(Netscape)在 1994 年首次提出,隨后擴展到互聯網上。

HTTPS 的信任基于預先安裝在操作系統中的證書頒發機構(CA)。因此,到一個網站的 HTTPS 連接僅在這些情況下可被信任:

  • 瀏覽器正確地實現了 HTTPS 且操作系統中安裝了正確且受信任的證書頒發機構;
  • 證書頒發機構僅信任合法的網站;
  • 被訪問的網站提供了一個有效的證書,也就是說它是一個由操作系統信任的證書頒發機構簽發的(大部分瀏覽器會對無效的證書發出警告);
  • 該證書正確地驗證了被訪問的網站(例如,訪問https://example.com時收到了簽發給example.com而不是其它域名的證書);
  • 此協議的加密層(SSL/TLS)能夠有效地提供認證和高強度的加密。

主要目的在于:

  • 安全傳輸數據
  • 防止中間人攻擊和竊聽
  • 驗證服務器的可信度

實踐

在 Go 中使用 HTTPS 也很簡單, 接口如下:

func (srv *Server) ListenAndServe() error
func (srv *Server) ListenAndServeTLS(certFile, keyFile string) error

對比一下就知道了, 只需要兩個參數就可以實現 HTTPS 了.

這兩個參數分別是證書文件的路徑和私鑰文件的路徑.
通常要獲取這兩個文件需要從證書頒發機構獲取.
雖然有免費的, 但還是比較麻煩, 通常還需要域名.

為了簡單起見, 這里使用自簽名證書, 當然, 這樣的證書是不會被瀏覽器信任的.

生成證書和私鑰

如果是 window 系統, 可以在 git bash 中運行.
MSYS_NO_PATHCONV=1 是專為 git bash 設置的環境變量, 沒有的話會報錯.

MSYS_NO_PATHCONV=1 openssl req -new -nodes -x509 -out server.crt -keyout server.key -days 3650 -subj "/C=CN/ST=SH/L=SH/O=CoolCat/OU=CoolCat Software/CN=127.0.0.1/emailAddress=coolcat@qq.com"

PowerShell 版本, 需要指定配置路徑 -config, 默認應該是 "C:\Program Files\Git\usr\ssl\openssl.cnf".

openssl req -config "C:\Program Files\Git\usr\ssl\openssl.cnf" -new -nodes -x509 -out server.crt -keyout server.key -days 3650 -subj "/C=CN/ST=SH/L=SH/O=CoolCat/OU=CoolCat Software/CN=127.0.0.1/emailAddress=coolcat@qq.com"

Linux 下就可以直接運行吧.

openssl req -new -nodes -x509 -out server.crt -keyout server.key -days 3650 -subj "/C=CN/ST=SH/L=SH/O=CoolCat/OU=CoolCat Software/CN=127.0.0.1/emailAddress=coolcat@qq.com"

這個命令會在當前目錄生成 server.crt 證書文件和 server.key 私鑰文件, 都復制到項目的 conf 目錄下.

修改配置文件

在配置文件 conf/config.yaml 中添加 HTTPS 相關的參數.

tls:
 addr: :443 # HTTPS 綁定端口
 cert: conf/server.crt # 自簽發的數字證書
 key: conf/server.key # 私鑰文件

HTTPS 的默認端口就是 443, 這里也配置成 443, 就可以在 URL 中省略端口號了.

修改啟動函數

一開始, 啟動函數是在 goroutine 中啟動 HTTP 服務器,
這里增加一個 goroutine 來啟動 HTTPS 服務器.

// 啟動 https 服務
cert := viper.GetString("tls.cert")
key := viper.GetString("tls.key")
addrTLS := viper.GetString("tls.addr")
if cert != ""  key != "" {
 go func() {
  // 等待 http 服務正常啟動
  -wait
  logrus.Infof("啟動服務器在 https address: %s", addrTLS)
  srv.Addr = addrTLS
  if err := srv.ListenAndServeTLS(cert, key); err != nil  err != http.ErrServerClosed {
   logrus.Fatalf("listen on https: %s\n", err)
  }
 }()
}

啟動之后, 就可以通過 https://127.0.0.1/v1/check/cpu 驗證一下了,

瀏覽器中打開肯定是會顯示不安全的, 因為證書無法通過驗證.

總結

HTTPS 是一種趨勢, 也是未來. API 接口為了安全性, 一般都是需要上 HTTPS 的.

而且在 Go 中使用 HTTPS 也挺簡單的, 換個 TLS 結尾的函數就行了.
也可以只使用 HTTPS, 禁止 HTTP 對外服務,
修改 HTTP 的配置參數 addr 為 localhost:port 就行.

當前部分的代碼

作為版本v0.10.0

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 詳解Golang實現http重定向https的方式
  • golang的httpserver優雅重啟方法詳解

標簽:調研邀請 太原 廣西 慶陽 阿克蘇 貴陽 西雙版納 德州

巨人網絡通訊聲明:本文標題《使用Go添加HTTPS的實現代碼示例》,本文關鍵詞  使用,添加,HTTPS,的,實現,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《使用Go添加HTTPS的實現代碼示例》相關的同類信息!
  • 本頁收集關于使用Go添加HTTPS的實現代碼示例的相關信息資訊供網民參考!
  • 推薦文章
    亚洲第一页乱| 国产不卡在线观看视频| 日韩免费在线视频| 国产成a人片在线观看视频| 欧美日本免费| 99色视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 日本免费看视频| 日韩在线观看免费| 成人影院一区二区三区| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 亚洲www美色| 亚洲爆爽| 黄色免费三级| 999精品视频在线| 亚洲wwwwww| 国产美女在线观看| 欧美大片a一级毛片视频| 国产综合91天堂亚洲国产| 成人高清免费| 欧美激情一区二区三区在线播放| 免费国产一级特黄aa大片在线| 久久国产一区二区| 日韩免费在线| 亚洲第一色在线| 中文字幕97| 成人免费高清视频| 国产一区免费在线观看| 精品毛片视频| 国产不卡在线播放| 韩国毛片免费| 黄视频网站在线观看| 你懂的在线观看视频| 国产激情一区二区三区| 亚洲精品久久玖玖玖玖| 久久精品店| 青青青草视频在线观看| 天堂网中文在线| 成人免费一级毛片在线播放视频| 国产一区二区高清视频| 香蕉视频亚洲一级| 天天做人人爱夜夜爽2020毛片| 99热视热频这里只有精品| 国产一区精品| 日本在线不卡免费视频一区| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 精品国产一级毛片| 99久久精品费精品国产一区二区| 你懂的在线观看视频| 99色视频| 国产一区二区精品在线观看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 99久久精品国产麻豆| 999久久66久6只有精品| 亚洲不卡一区二区三区在线| 999精品影视在线观看| 黄色短视屏| 亚欧乱色一区二区三区| 色综合久久天天综线观看| 精品视频在线看 | 成人高清免费| 黄视频网站免费| 久久成人亚洲| 精品视频免费看| 国产91精品系列在线观看| 久久精品店| 精品国产一级毛片| 亚飞与亚基在线观看| 天天做人人爱夜夜爽2020| 99久久精品国产免费| 国产成人精品综合| 九九免费高清在线观看视频| 国产亚洲精品aaa大片| 日本在线不卡免费视频一区| 成人在激情在线视频| 中文字幕一区二区三区精彩视频| 精品国产一级毛片| 国产欧美精品| 国产伦精品一区二区三区在线观看 | 精品视频一区二区| 91麻豆国产福利精品| 国产亚洲精品aaa大片| 久久久成人网| 99久久精品国产麻豆| 一级毛片看真人在线视频| 免费国产在线视频| 97视频免费在线观看| 99久久精品费精品国产一区二区| 免费国产一级特黄aa大片在线| 91麻豆精品国产高清在线| 深夜做爰性大片中文| 国产亚洲精品aaa大片| 国产a网| 91麻豆精品国产自产在线 | 精品久久久久久免费影院| 久久国产精品永久免费网站| 欧美激情一区二区三区视频 | 99热精品在线| 国产成人精品影视| 欧美国产日韩在线| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 99热视热频这里只有精品| 日韩中文字幕在线观看视频| 欧美爱色| 你懂的在线观看视频| 久久国产一区二区| 999久久66久6只有精品| 欧美激情在线精品video| 日韩专区一区| 亚洲天堂一区二区三区四区| 成人免费观看网欧美片| 欧美日本免费| 国产视频一区二区在线观看| 成人在激情在线视频| 亚洲精品影院久久久久久| 91麻豆精品国产高清在线| 国产一区二区精品| 黄视频网站在线观看| 午夜在线影院| 国产成人精品综合| 亚洲第一页乱| a级黄色毛片免费播放视频| 美国一区二区三区| 亚洲第一页乱| 欧美大片aaaa一级毛片| 香蕉视频久久| 亚洲精品久久玖玖玖玖| 中文字幕一区二区三区精彩视频| 韩国三级视频网站| 国产伦精品一区二区三区无广告| 国产一区二区精品尤物| 成人高清视频免费观看| 香蕉视频久久| 国产麻豆精品高清在线播放| 九九久久国产精品| 国产91视频网| 一级女性全黄生活片免费 | 你懂的福利视频| 国产亚洲精品aaa大片| 亚久久伊人精品青青草原2020| 天天做人人爱夜夜爽2020| 国产综合91天堂亚洲国产| 国产麻豆精品高清在线播放| 成人免费观看的视频黄页| 午夜精品国产自在现线拍| 国产欧美精品午夜在线播放| 麻豆网站在线免费观看| 国产网站在线| 国产a免费观看| 国产不卡在线看| 精品国产亚洲人成在线| 国产亚洲精品aaa大片| 亚飞与亚基在线观看| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 欧美国产日韩在线| 国产一区二区精品| 欧美一级视| 高清一级片| 亚飞与亚基在线观看| 国产麻豆精品视频| 成人免费福利片在线观看| 欧美激情在线精品video| 欧美一级视| 久久99爰这里有精品国产| 精品国产一级毛片| 国产精品1024永久免费视频| 国产伦久视频免费观看 视频| 欧美国产日韩在线| 国产视频一区二区在线观看| 青青青草视频在线观看| 国产成人精品综合在线| 久草免费在线观看| 精品在线观看一区| 免费一级生活片| 国产一区二区精品久久91| 99热热久久| 尤物视频网站在线观看| 国产高清视频免费观看| 精品视频一区二区| 99热精品在线| 国产美女在线一区二区三区| 欧美另类videosbestsex视频| 久草免费在线视频| 精品视频免费看| 精品国产一区二区三区久久久蜜臀 | 日韩在线观看免费完整版视频| 免费国产在线观看| 成人在免费观看视频国产| 99久久精品国产片| 欧美a级成人淫片免费看| 国产麻豆精品视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 色综合久久天天综线观看| 免费一级片网站| 精品久久久久久中文字幕2017| 韩国毛片| 91麻豆精品国产片在线观看| 成人免费观看视频| 免费国产在线视频| 成人免费观看男女羞羞视频|