如何使用非標準憑證檔案在 Go Web 伺服器上建立 HTTPS
提供的文件建議連接三個 .pem 檔案。但是,如果您沒有這些文件,請按照以下步驟使用您擁有的證書文件設定HTTPS:
組合中級證書:
雖然Go 通常是這樣的需要一個串聯的憑證文件,其他平台僅儲存根憑證。為了確保相容性,請連接中間憑證:
cat website.com.ca-crt website.com.ca-bundle > website.com.full-cert.crt
在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
以上是如何使用非標準憑證檔案在Go Web伺服器上建立HTTPS?的詳細內容。更多資訊請關注PHP中文網其他相關文章!