From fdf95297a5d8e38e8abd307cfc259c98088ef84b Mon Sep 17 00:00:00 2001
From: zhengkunwang <31820853+zhengkunwang223@users.noreply.github.com>
Date: Fri, 4 Apr 2025 00:14:30 +0800
Subject: [PATCH] feat(system): fix issue with upgrade redirect (#8316)
---
agent/app/service/website.go | 9 +++++++
agent/i18n/lang/zh.yaml | 1 +
frontend/src/components/log/file/index.vue | 5 ++--
frontend/src/layout/index.vue | 12 +++++++++
.../src/views/login/components/login-form.vue | 1 -
.../views/website/runtime/dotnet/index.vue | 16 ++++-------
.../src/views/website/runtime/go/index.vue | 16 ++++-------
.../src/views/website/runtime/java/index.vue | 16 ++++-------
.../src/views/website/runtime/node/index.vue | 16 ++++-------
.../src/views/website/runtime/php/index.vue | 27 ++++++-------------
.../views/website/runtime/python/index.vue | 16 ++++-------
11 files changed, 58 insertions(+), 77 deletions(-)
diff --git a/agent/app/service/website.go b/agent/app/service/website.go
index 75c28af72..a65857d31 100644
--- a/agent/app/service/website.go
+++ b/agent/app/service/website.go
@@ -3000,6 +3000,15 @@ func (w WebsiteService) DeleteLoadBalance(req request.WebsiteLBDelete) error {
if err != nil {
return err
}
+ proxies, _ := w.GetProxies(website.ID)
+ if len(proxies) > 0 {
+ for _, proxy := range proxies {
+ if strings.HasSuffix(proxy.ProxyPass, fmt.Sprintf("://%s", req.Name)) {
+ return buserr.New("ErrProxyIsUsed")
+ }
+ }
+ }
+
includeDir := GetSitePath(website, SiteUpstreamDir)
fileOp := files.NewFileOp()
filePath := path.Join(includeDir, fmt.Sprintf("%s.conf", req.Name))
diff --git a/agent/i18n/lang/zh.yaml b/agent/i18n/lang/zh.yaml
index f30838ab5..0dad65e28 100644
--- a/agent/i18n/lang/zh.yaml
+++ b/agent/i18n/lang/zh.yaml
@@ -128,6 +128,7 @@ ErrDefaultAlias: "default 为保留代号,请使用其他代号"
ErrParentWebsite: "需要先删除子网站 {{ .name }}"
ErrBuildDirNotFound: "构建目录不存在"
ErrImageNotExist: "运行环境 {{ .name }} 镜像不存在,请重新编辑运行环境"
+ErrProxyIsUsed: "负载均衡已被反向代理使用,无法删除"
#ssl
ErrSSLCannotDelete: "{{ .name }} 证书正在被网站使用,无法删除"
diff --git a/frontend/src/components/log/file/index.vue b/frontend/src/components/log/file/index.vue
index df8f4e802..c83623ad8 100644
--- a/frontend/src/components/log/file/index.vue
+++ b/frontend/src/components/log/file/index.vue
@@ -25,7 +25,7 @@
class="log-item"
:style="{ top: `${(startIndex + index) * logHeight}px` }"
>
-
+
@@ -41,7 +41,7 @@ const globalStore = GlobalStore();
interface LogProps {
id?: number;
- type: string;
+ type?: string;
name?: string;
tail?: boolean;
taskID?: string;
@@ -63,6 +63,7 @@ const props = defineProps({
taskType: '',
taskOperate: '',
resourceID: 0,
+ taskID: '',
}),
},
defaultButton: {
diff --git a/frontend/src/layout/index.vue b/frontend/src/layout/index.vue
index bc04829dc..cf97395e0 100644
--- a/frontend/src/layout/index.vue
+++ b/frontend/src/layout/index.vue
@@ -93,6 +93,17 @@ const handleMenuClick = async (path) => {
tabsStore.activeTabPath = route.path;
};
+const toLogin = () => {
+ let baseUrl = window.location.origin;
+ let newUrl = '';
+ if (globalStore.entrance) {
+ newUrl = baseUrl + '/' + globalStore.entrance;
+ } else {
+ newUrl = baseUrl + '/login';
+ }
+ window.open(newUrl, '_self');
+};
+
const loadStatus = async () => {
loading.value = globalStore.isLoading;
loadingText.value = globalStore.loadingText;
@@ -102,6 +113,7 @@ const loadStatus = async () => {
.then((res) => {
if (res) {
location.reload();
+ toLogin();
clearInterval(Number(timer));
timer = null;
}
diff --git a/frontend/src/views/login/components/login-form.vue b/frontend/src/views/login/components/login-form.vue
index 4683231d6..713605516 100644
--- a/frontend/src/views/login/components/login-form.vue
+++ b/frontend/src/views/login/components/login-form.vue
@@ -338,7 +338,6 @@ const login = (formEl: FormInstance | undefined) => {
tabsStore.removeAllTabs();
globalStore.currentNode = 'local';
MsgSuccess(i18n.t('commons.msg.loginSuccess'));
- console.log('loiin syc');
router.push({ name: 'home' });
document.onkeydown = null;
} catch (res) {
diff --git a/frontend/src/views/website/runtime/dotnet/index.vue b/frontend/src/views/website/runtime/dotnet/index.vue
index 27c596ee2..28097f729 100644
--- a/frontend/src/views/website/runtime/dotnet/index.vue
+++ b/frontend/src/views/website/runtime/dotnet/index.vue
@@ -16,6 +16,10 @@
{{ $t('runtime.create') }}
+
+
+
+
diff --git a/frontend/src/views/website/runtime/go/index.vue b/frontend/src/views/website/runtime/go/index.vue
index 94e721f47..f33d0224f 100644
--- a/frontend/src/views/website/runtime/go/index.vue
+++ b/frontend/src/views/website/runtime/go/index.vue
@@ -16,6 +16,10 @@
{{ $t('runtime.create') }}
+
+
+
+
diff --git a/frontend/src/views/website/runtime/java/index.vue b/frontend/src/views/website/runtime/java/index.vue
index d0930fd3a..32045edbb 100644
--- a/frontend/src/views/website/runtime/java/index.vue
+++ b/frontend/src/views/website/runtime/java/index.vue
@@ -16,6 +16,10 @@
{{ $t('runtime.create') }}
+
+
+
+
diff --git a/frontend/src/views/website/runtime/node/index.vue b/frontend/src/views/website/runtime/node/index.vue
index ed7972cdf..d72fc97f7 100644
--- a/frontend/src/views/website/runtime/node/index.vue
+++ b/frontend/src/views/website/runtime/node/index.vue
@@ -16,6 +16,10 @@
{{ $t('runtime.create') }}
+
+
+
+
diff --git a/frontend/src/views/website/runtime/php/index.vue b/frontend/src/views/website/runtime/php/index.vue
index 28e163f9e..71599ad09 100644
--- a/frontend/src/views/website/runtime/php/index.vue
+++ b/frontend/src/views/website/runtime/php/index.vue
@@ -2,13 +2,7 @@
-
-
-
- {{ $t('runtime.systemRestartHelper') }}
-
-
-
+
{{ $t('runtime.create') }}
@@ -22,6 +16,10 @@
{{ $t('container.cleanBuildCache') }}
+
+
+
+
-
+
@@ -109,7 +107,7 @@
diff --git a/frontend/src/views/website/runtime/python/index.vue b/frontend/src/views/website/runtime/python/index.vue
index 0f34fa05e..1856bf041 100644
--- a/frontend/src/views/website/runtime/python/index.vue
+++ b/frontend/src/views/website/runtime/python/index.vue
@@ -16,6 +16,10 @@
{{ $t('runtime.create') }}
+
+
+
+