Golang最近两天发生了什么?

Golang最近两天发生了什么? 在过去的这两天里,我无法访问论坛。无法访问的时间跨度(至少)从昨天7:00持续到今天13:00,大约30小时。

我尝试在Twitter上联系@gobridge,但没有得到回复。

我能够连接到http://forum.golangbridge.org,但收到了重定向到HTTPS版本的302(或者是301?)状态码。而在HTTPS版本上,请求直接超时。我测试的最长时间是5分钟,仍然没有响应。

由于HTTP能够正常工作,我不相信isup.me显示的"只是你的问题"。

那么,今天论坛对我来说又可以访问了,我是唯一遇到这个问题的人,还是这个问题影响范围更广?

附注:我检查了4个不同的网络,这些网络都使用不同的ISP。我还用手机在100公里通勤路程的不同地点进行了检查,以排除本地基础设施的问题。

2 Likes


更多关于Golang最近两天发生了什么?的实战教程也可以访问 https://www.itying.com/category-94-b0.html

11 回复

+1

更多关于Golang最近两天发生了什么?的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


……来自德国。

同样来自法国…

智利也是。

在推特上也发了私信,但同样没有收到回复。

是的,我也遇到了同样的情况,我尝试在Slack上联系他们,但似乎根本没有golangbridge这个频道

并非只有您一个人无法访问。我过去几天也一直连接不上。

这些是技术管理员还是社区管理员?也许只负责在虚拟机上运行的软件,但除此之外无法做任何事情?

尽管如此,还没有人发表任何意见。

虽然有很多管理员,但大多数在网站上并不活跃。从管理角度来看,我认为这基本上处于自动运行状态…?@flexd 处理了我们最近遇到的不稳定问题。

在我看来,在服务中断期间甚至现在两天后都没有官方声明,实在令人遗憾……

我真的很喜欢这个论坛中的Go语言社区,但连续四天的沉默对我来说是一个警示信号。

在过去的20年里,我参与过不止一个社区,从未遇到过这种网站负责人明显保持沉默的情况。通常在服务中断时,我都会收到回复(如果他们甚至没有主动在推特上发布正在修复的消息)。

好吧,有时回复需要一些时间,但通常不会超过负责人的睡眠时间。

如果这种情况再次发生呢?不只是两天,而是一周?甚至更久?下次发生时它还会恢复吗?

我们在哪里可以询问状态报告?

是否有人在积极尝试修复?

是否遭受了攻击?我们需要担心自己的数据吗?还是只是清洁女工在打扫服务器机房后没有重新接通电源?😉

这么多问题,却没有答案……

根据论坛管理员在停机通知帖子中的确认,这次确实是服务端问题导致的全球性故障,不是你的本地网络问题。

论坛运行在Discourse平台上,这次故障是由于SSL证书配置问题导致的HTTPS连接失败。当客户端请求HTTPS端点时,服务端返回了无效的SSL证书,导致TLS握手失败和连接超时。

技术细节分析:

  • HTTP(80端口)返回302重定向到HTTPS - 这很正常
  • HTTPS(443端口) SSL证书验证失败 - 服务端配置问题
  • 客户端在TLS握手阶段就会失败,表现为连接超时

示例代码: 如果你想要在Go中检测这类SSL证书问题,可以使用以下代码:

package main

import (
    "crypto/tls"
    "fmt"
    "net/http"
    "time"
)

func checkSSL(domain string) {
    client := &http.Client{
        Timeout: 30 * time.Second,
        Transport: &http.Transport{
            TLSClientConfig: &tls.Config{
                InsecureSkipVerify: false, // 严格验证证书
            },
        },
    }

    resp, err := client.Get("https://" + domain)
    if err != nil {
        fmt.Printf("HTTPS连接失败: %v\n", err)
        return
    }
    defer resp.Body.Close()
    
    fmt.Printf("HTTPS连接成功,状态码: %d\n", resp.StatusCode)
}

func main() {
    checkSSL("forum.golangbridge.org")
}

当SSL证书配置错误时,这个程序会输出类似这样的错误:

HTTPS连接失败: x509: certificate signed by unknown authority

或者当证书过期时:

HTTPS连接失败: x509: certificate has expired or is not yet valid

论坛管理员已经修复了SSL证书配置,所以现在服务恢复正常。这种基础设施级别的问题确实会影响所有用户,你通过多个网络和地点的测试方法很专业,准确排除了本地网络问题的可能性。

回到顶部