(websiteSSL model.WebsiteSSL)
| 1363 | } |
| 1364 | |
| 1365 | func UpdateSSLConfig(websiteSSL model.WebsiteSSL) error { |
| 1366 | websites, _ := websiteRepo.GetBy(websiteRepo.WithWebsiteSSLID(websiteSSL.ID)) |
| 1367 | if len(websites) > 0 { |
| 1368 | for _, website := range websites { |
| 1369 | if err := createPemFile(website, websiteSSL); err != nil { |
| 1370 | return buserr.WithMap("ErrUpdateWebsiteSSL", map[string]interface{}{"name": website.PrimaryDomain, "err": err.Error()}, err) |
| 1371 | } |
| 1372 | } |
| 1373 | nginxInstall, err := getAppInstallByKey(constant.AppOpenresty) |
| 1374 | if err != nil { |
| 1375 | return err |
| 1376 | } |
| 1377 | if err := opNginx(nginxInstall.ContainerName, constant.NginxReload); err != nil { |
| 1378 | return buserr.WithErr("ErrSSLApply", err) |
| 1379 | } |
| 1380 | } |
| 1381 | if !global.IsMaster { |
| 1382 | return nil |
| 1383 | } |
| 1384 | enable, sslID := GetSystemSSL() |
| 1385 | if enable && sslID == websiteSSL.ID { |
| 1386 | fileOp := files.NewFileOp() |
| 1387 | secretDir := path.Join(global.Dir.DataDir, "secret") |
| 1388 | if err := fileOp.WriteFile(path.Join(secretDir, "server.crt"), strings.NewReader(websiteSSL.Pem), 0600); err != nil { |
| 1389 | global.LOG.Errorf("Failed to update the SSL certificate File for 1Panel System domain [%s] , err:%s", websiteSSL.PrimaryDomain, err.Error()) |
| 1390 | return err |
| 1391 | } |
| 1392 | if err := fileOp.WriteFile(path.Join(secretDir, "server.key"), strings.NewReader(websiteSSL.PrivateKey), 0600); err != nil { |
| 1393 | global.LOG.Errorf("Failed to update the SSL certificate for 1Panel System domain [%s] , err:%s", websiteSSL.PrimaryDomain, err.Error()) |
| 1394 | return err |
| 1395 | } |
| 1396 | } |
| 1397 | return nil |
| 1398 | } |
| 1399 | |
| 1400 | func ChangeHSTSConfig(enable bool, includeSubDomains bool, http3Enable bool, website model.Website) error { |
| 1401 | includeDir := GetSitePath(website, SiteProxyDir) |
no test coverage detected