diff --git a/kernel/model/sync.go b/kernel/model/sync.go index 78a41ce40..c394f7e13 100644 --- a/kernel/model/sync.go +++ b/kernel/model/sync.go @@ -139,7 +139,7 @@ func BootSyncData() { if !isProviderOnline(false) { BootSyncSucc = 1 - util.PushErrMsg(Conf.Language(28), 7000) + util.PushErrMsg(Conf.Language(76), 7000) return } diff --git a/kernel/util/net.go b/kernel/util/net.go index 701380801..c22cbd82b 100644 --- a/kernel/util/net.go +++ b/kernel/util/net.go @@ -57,7 +57,19 @@ func isOnline(checkURL string, skipTlsVerify bool) (ret bool) { } for i := 0; i < 3; i++ { - _, err := c.R().Get(checkURL) + resp, err := c.R().Get(checkURL) + if resp.GetHeader("Location") != "" { + return true + } + + switch err.(type) { + case *url.Error: + if err.(*url.Error).URL != checkURL { + // DNS 重定向 + return true + } + } + ret = nil == err if ret { break