diff --git a/server/admin/api_cert.go b/server/admin/api_cert.go index 15018e5..5731c3a 100755 --- a/server/admin/api_cert.go +++ b/server/admin/api_cert.go @@ -69,8 +69,7 @@ func CreatCert(w http.ResponseWriter, r *http.Request) { } defer r.Body.Close() config := &dbdata.SettingLetsEncrypt{} - err = json.Unmarshal(body, config) - if err != nil { + if err := json.Unmarshal(body, config); err != nil { RespError(w, RespInternalErr, err) return } diff --git a/server/dbdata/cert.go b/server/dbdata/cert.go index 3c284bc..e1a9412 100755 --- a/server/dbdata/cert.go +++ b/server/dbdata/cert.go @@ -261,8 +261,12 @@ func (c *LeGoClient) SaveCert() error { } func ParseCert() (*tls.Certificate, *time.Time, error) { - os.Stat(base.Cfg.CertFile) - os.Stat(base.Cfg.CertKey) + _, errCert := os.Stat(base.Cfg.CertFile) + _, errKey := os.Stat(base.Cfg.CertKey) + if os.IsNotExist(errCert) || os.IsNotExist(errKey) { + PrivateCert() + + } cert, err := tls.LoadX509KeyPair(base.Cfg.CertFile, base.Cfg.CertKey) if err != nil || errors.Is(err, os.ErrNotExist) { PrivateCert()