fix: Fix the issue of system certificates not auto-renewing. (#9978)

This commit is contained in:
CityFun 2025-08-13 16:14:07 +08:00 committed by wanghe-fit2cloud
parent e76ea877b9
commit 78e0233dc4
2 changed files with 25 additions and 23 deletions

View file

@ -1135,13 +1135,12 @@ func saveCertificateFile(websiteSSL *model.WebsiteSSL, logger *log.Logger) {
} }
func GetSystemSSL() (bool, uint) { func GetSystemSSL() (bool, uint) {
sslSetting, err := settingRepo.Get(settingRepo.WithByKey("SSL")) var sslSetting model.Setting
if err != nil { _ = global.CoreDB.Model(&model.Setting{}).Where("key = ?", "SSL").First(&sslSetting).Error
return false, 0 if sslSetting.Value == "Enable" {
} var sslIDSetting model.Setting
if sslSetting.Value == "enable" { _ = global.CoreDB.Model(&model.Setting{}).Where("key = ?", "SSLID").First(&sslIDSetting).Error
sslID, _ := settingRepo.Get(settingRepo.WithByKey("SSLID")) idValue, _ := strconv.Atoi(sslIDSetting.Value)
idValue, _ := strconv.Atoi(sslID.Value)
if idValue > 0 { if idValue > 0 {
return true, uint(idValue) return true, uint(idValue)
} }

View file

@ -2,34 +2,37 @@ package req_helper
import ( import (
"bytes" "bytes"
"crypto/tls"
"fmt" "fmt"
"github.com/1Panel-dev/1Panel/agent/app/model"
"github.com/1Panel-dev/1Panel/agent/global"
"net/http" "net/http"
"github.com/1Panel-dev/1Panel/agent/app/repo"
) )
func PostLocalCore(url string) error { func PostLocalCore(url string) error {
settingRepo := repo.NewISettingRepo() var serverPortSetting model.Setting
port, err := settingRepo.GetValueByKey("ServerPort") _ = global.CoreDB.Model(&model.Setting{}).Where("key = ?", "ServerPort").First(&serverPortSetting).Error
if err != nil { var sslStatusSetting model.Setting
return err _ = global.CoreDB.Model(&model.Setting{}).Where("key = ?", "SSL").First(&sslStatusSetting).Error
}
sslStatus, err := settingRepo.GetValueByKey("SSL")
if err != nil {
return err
}
var prefix string var prefix string
if sslStatus == "Disable" { if sslStatusSetting.Value == "Disable" {
prefix = "http://" prefix = "http"
} else { } else {
prefix = "https://" prefix = "https"
} }
reloadURL := fmt.Sprintf("%s://127.0.0.1:%s/api/v2%s", prefix, port, url)
reloadURL := fmt.Sprintf("%s://127.0.0.1:%s/api/v2%s", prefix, serverPortSetting.Value, url)
req, err := http.NewRequest("POST", reloadURL, bytes.NewBuffer([]byte{})) req, err := http.NewRequest("POST", reloadURL, bytes.NewBuffer([]byte{}))
if err != nil { if err != nil {
return err return err
} }
client := &http.Client{} tr := &http.Transport{
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
}
client := &http.Client{
Transport: tr,
}
defer client.CloseIdleConnections() defer client.CloseIdleConnections()
resp, err := client.Do(req) resp, err := client.Do(req)
if err != nil { if err != nil {