# subconverter-go 配置完整示例 # 复制本文件为 config.yaml 后上线,并按需调整各项参数。 # 所有字段均可通过环境变量覆盖,格式为 SUBCONVERTER_
_ # 例如:SUBCONVERTER_SERVER_PORT=8080 会覆盖 server.port。 server: host: "0.0.0.0" # 监听地址;若仅在本机访问可改为 127.0.0.1。 port: 25500 # 服务端口;与 docker 映射或反向代理端口保持一致。 read_timeout: 30 # 读取请求体超时时间(秒),防止慢速连接占用资源。 write_timeout: 30 # 响应输出超时时间(秒),超过视为失败。 max_request_size: 10485760 # 单次请求最大字节数,默认 10MB,过大可据需求调整。 logging: level: "info" # 日志级别:debug/info/warn/error,调试时可设为 debug。 format: "json" # 输出格式:json 便于采集,text 便于人工阅读。 output: "stdout" # 输出目标:stdout / stderr / file(配合 file 字段使用)。 file: "logs/subconverter-go.log" # 当 output=file 时写入的日志文件路径。 max_size: 100 # 单个日志文件最大大小(MB);仅在 file 模式下生效。 max_age: 7 # 保留历史日志的天数;配合 max_backups 控制留存策略。 max_backups: 3 # 最多保留的历史日志文件个数。 compress: true # 是否对滚动日志进行 gzip 压缩,节省磁盘空间。 security: access_tokens: - "changeme-token" # 访问令牌;留空数组则关闭鉴权。建议生产环境设置随机值。 cors_origins: - "https://example.com" # 允许跨域的来源;可按需列出多个。 - "*" # 临时放行全部来源时使用 "*",注意安全风险。 rate_limit: 120 # 单 IP 每分钟允许的请求数;0 表示不限制。 timeout: 60 # 请求在后台处理的超时时间(秒),超过将返回 504。 conversion: default_target: "clash" # 当请求未显式指定 target 时的默认输出格式。 supported_targets: # 允许生成的全部格式;请求超出此列表会返回 400。 - "clash" - "clashr" - "surge" - "quanx" - "loon" - "surfboard" - "v2ray" - "singbox" default_emoji: false # 默认是否在节点名称前追加 emoji;请求可用 add_emoji 覆盖。 default_udp: false # 默认是否启用 UDP;请求可用 udp 参数覆盖。 max_nodes: 0 # 返回的最大节点数;0 表示不限,防止过大可设置上限。 cache_timeout: 60 # 转换结果缓存时间(分钟);需配合缓存功能使用。 # 说明: # 1. 绝大多数订阅转换细节(如 rename、ruleset、emoji 脚本等)通过 API 请求参数控制,未纳入全局配置。 # 2. 当使用 Docker 运行时,可通过挂载 config.yaml 或传递环境变量的方式覆盖以上配置。 # 3. 修改配置后,若以 systemd 或 docker compose 运行,请重启服务以加载最新参数。