go - 顶点 : authorization error for <domain> (acme/autocert)

标签 go lets-encrypt

运行以下代码时出现错误:

acme: authorization error for domain (where domain is replaced by my actual domain)

有没有人遇到过这个问题?返回的错误并没有提供太多信息。

package main

import (
    "crypto/tls"
    "net/http"

    "golang.org/x/crypto/acme/autocert"
)

func main() {
    certManager := autocert.Manager{
        Prompt:     autocert.AcceptTOS,
        HostPolicy: autocert.HostWhitelist(<domain>), //your domain here
        Cache:      autocert.DirCache("cache"), //folder for storing certificates
    }

    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        w.Write([]byte("Hello world"))
    })

    server := &http.Server{
        Addr: ":8086",
        TLSConfig: &tls.Config{
            GetCertificate:     certManager.GetCertificate,
    }

    if err := server.ListenAndServeTLS("", ""); err != nil {
        print(err.Error())
    }
}

最佳答案

也许您的服务器在端口 8086 上,而 tls 质询在端口 443 上? 尝试在端口 443 上提供服务(您可能必须设置二进制文件以允许它执行此操作)。

请参阅有关让我们加密的问题:

https://github.com/letsencrypt/acme-spec/issues/33

关于go - 顶点 : authorization error for <domain> (acme/autocert),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45734686/

相关文章:

go - slice 迭代顺序

ruby-on-rails - Golang 微服务和与现有应用程序的通信

go - 在 Go 中用递归练习 "Naked Returns"。我的ELSE语句中的return语句不正确吗?

sub.domain.me 和 www.sub.domain.me 的 SSL 证书

ssl - 在 http 而非 https 上运行的端口 8443

node.js - Nodejs ssl key 权限被拒绝

go - 实例新类型(Golang)

git - Go 开发需要付费的 Github 账号才能私密开发吗?

laravel - 如何在 VestaCP 的单个项目中为多个域启用 let's encrypt SSL?

ssl - GKE Ingress 如何使用 Letsencrypt 证书?