diff --git a/backend/app/dto/request/website_ssl.go b/backend/app/dto/request/website_ssl.go index 726512c13..556b6c1a4 100644 --- a/backend/app/dto/request/website_ssl.go +++ b/backend/app/dto/request/website_ssl.go @@ -77,7 +77,7 @@ type WebsiteSSLUpdate struct { PrimaryDomain string `json:"primaryDomain" validate:"required"` OtherDomains string `json:"otherDomains"` Provider string `json:"provider" validate:"required"` - AcmeAccountID uint `json:"acmeAccountId" validate:"required"` + AcmeAccountID uint `json:"acmeAccountId"` DnsAccountID uint `json:"dnsAccountId"` KeyType string `json:"keyType"` Apply bool `json:"apply"` diff --git a/backend/app/service/website_ssl.go b/backend/app/service/website_ssl.go index 43be40b22..d2d000b4f 100644 --- a/backend/app/service/website_ssl.go +++ b/backend/app/service/website_ssl.go @@ -389,11 +389,13 @@ func (w WebsiteSSLService) Update(update request.WebsiteSSLUpdate) error { updateParams["nameserver1"] = update.Nameserver1 updateParams["nameserver2"] = update.Nameserver2 - acmeAccount, err := websiteAcmeRepo.GetFirst(commonRepo.WithByID(update.AcmeAccountID)) - if err != nil { - return err + if websiteSSL.Provider != constant.SelfSigned { + acmeAccount, err := websiteAcmeRepo.GetFirst(commonRepo.WithByID(update.AcmeAccountID)) + if err != nil { + return err + } + updateParams["acme_account_id"] = acmeAccount.ID } - updateParams["acme_account_id"] = acmeAccount.ID if update.PushDir { if !files.NewFileOp().Stat(update.Dir) { @@ -412,7 +414,7 @@ func (w WebsiteSSLService) Update(update request.WebsiteSSLUpdate) error { } } updateParams["domains"] = strings.Join(domains, ",") - if update.Provider == constant.DNSAccount || update.Provider == constant.Http { + if update.Provider == constant.DNSAccount || update.Provider == constant.Http || update.Provider == constant.SelfSigned { updateParams["auto_renew"] = update.AutoRenew } else { updateParams["auto_renew"] = false