feat: 添加 no_proxy 配置支持以优化代理设置 (#2564)

This commit is contained in:
RC-CHN
2025-08-26 21:08:46 +08:00
committed by GitHub
parent 10b9228060
commit 98d8eaee02
2 changed files with 12 additions and 1 deletions
+7
View File
@@ -103,6 +103,7 @@ DEFAULT_CONFIG = {
"t2i_endpoint": "",
"t2i_use_file_service": False,
"http_proxy": "",
"no_proxy": ["localhost", "127.0.0.1", "::1"],
"dashboard": {
"enable": True,
"username": "astrbot",
@@ -1916,6 +1917,12 @@ CONFIG_METADATA_2 = {
"type": "string",
"hint": "启用后,会以添加环境变量的方式设置代理。格式为 `http://ip:port`",
},
"no_proxy": {
"description": "直连地址列表",
"type": "list",
"items": {"type": "string"},
"hint": "在此处添加不希望通过代理访问的地址,例如内部服务地址。回车添加,可添加多个,如未设置代理请忽略此配置",
},
"timezone": {
"description": "时区",
"type": "string",
+5 -1
View File
@@ -52,14 +52,18 @@ class AstrBotCoreLifecycle:
os.environ["https_proxy"] = proxy_config
os.environ["http_proxy"] = proxy_config
logger.debug(f"Using proxy: {proxy_config}")
# 设置 no_proxy
no_proxy_list = self.astrbot_config.get("no_proxy", [])
os.environ["no_proxy"] = ",".join(no_proxy_list)
else:
# 清空代理环境变量
if "https_proxy" in os.environ:
del os.environ["https_proxy"]
if "http_proxy" in os.environ:
del os.environ["http_proxy"]
if "no_proxy" in os.environ:
del os.environ["no_proxy"]
logger.debug("HTTP proxy cleared")
os.environ["no_proxy"] = "localhost,127.0.0.1,::1"
async def initialize(self):
"""