diff --git a/packages/libs/lib-server/src/system/settings/service/models.ts b/packages/libs/lib-server/src/system/settings/service/models.ts
index 0ceabb90..1d53ac8b 100644
--- a/packages/libs/lib-server/src/system/settings/service/models.ts
+++ b/packages/libs/lib-server/src/system/settings/service/models.ts
@@ -25,6 +25,7 @@ export class SysPublicSettings extends BaseSettings {
limitUserPipelineCount = 0;
managerOtherUserPipeline = false;
icpNo?: string;
+ robots?: boolean = true;
}
export class SysPrivateSettings extends BaseSettings {
diff --git a/packages/ui/certd-client/src/api/modules/api.basic.ts b/packages/ui/certd-client/src/api/modules/api.basic.ts
index 23b46021..29dfb61c 100644
--- a/packages/ui/certd-client/src/api/modules/api.basic.ts
+++ b/packages/ui/certd-client/src/api/modules/api.basic.ts
@@ -34,6 +34,7 @@ export type SysPublicSetting = {
limitUserPipelineCount?: number;
managerOtherUserPipeline?: boolean;
icpNo?: string;
+ robots?: boolean;
};
export type SuiteSetting = {
enabled?: boolean;
diff --git a/packages/ui/certd-client/src/views/sys/settings/tabs/base.vue b/packages/ui/certd-client/src/views/sys/settings/tabs/base.vue
index f1d24360..54c3df5d 100644
--- a/packages/ui/certd-client/src/views/sys/settings/tabs/base.vue
+++ b/packages/ui/certd-client/src/views/sys/settings/tabs/base.vue
@@ -13,6 +13,10 @@
+
+
+
+
当某些网站被墙时可以配置
diff --git a/packages/ui/certd-server/src/controller/basic/root-controller.ts b/packages/ui/certd-server/src/controller/basic/root-controller.ts
new file mode 100644
index 00000000..ab45671a
--- /dev/null
+++ b/packages/ui/certd-server/src/controller/basic/root-controller.ts
@@ -0,0 +1,18 @@
+import { Controller, Get, Inject, Provide } from '@midwayjs/core';
+import { Constants, SysSettingsService } from '@certd/lib-server';
+
+@Provide()
+@Controller('/')
+export class HomeController {
+ @Inject()
+ sysSettingsService: SysSettingsService;
+ @Get('/robots.txt', { summary: Constants.per.guest })
+ async robots(): Promise {
+ const publicSettings = await this.sysSettingsService.getPublicSettings();
+ if (!publicSettings.robots) {
+ return 'User-agent: *\nDisallow: /';
+ } else {
+ return 'User-agent: *\nAllow: /';
+ }
+ }
+}