如何使用非標準憑證檔案在 Go Web 伺服器上建立 HTTPS
提供的文件建議連接三個 .pem 檔案。但是,如果您沒有這些文件,以下是如何使用您擁有的證書文件設定HTTPS:
組合中間證書:
雖然Go 通常需要一個串聯的證書文件,其他平台僅儲存根憑證。為了確保相容性,請連接中間憑證:
cat website.com.ca-crt website.com.ca-bundle > website.com.full-cert.crt
Setting Go中開啟HTTPS:
使用net/http/ListenAndServeTLS設定HTTPS:
import ( "fmt" "log" "net/http" ) func handler(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "Hello, %q", r.URL.Path[1:]) } func main() { http.HandleFunc("/", handler) log.Printf("Listening on port 10443. Visit https://127.0.0.1:10443/") err := http.ListenAndServeTLS(":10443", "website.com.full-cert.crt", "private-key.pem", nil) log.Fatal(err) }
附加說明:
需要中間憑證才能在客戶端和伺服器之間建立信任。使用完整的憑證檔案可確保與所有瀏覽器和裝置的相容性。
有關組合證書的更多信息,請參閱此資源:https://kb.wisc.edu/page.php?id=18923
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3