server:
  tomcat:
    uri-encoding: utf-8
spring:
  main:
    web-application-type: reactive
    allow-bean-definition-overriding: true
  application:
    name: @project.artifactId@
  profiles:
    active: @profiles.active@
  http:
    multipart:
      maxFileSize: 100Mb
      maxRequestSize: 1000Mb
  rabbitmq:
    host: @profiles.rabbitmq.host@
    port: @profiles.rabbitmq.port@
    username: @profiles.rabbitmq.username@
    password: @profiles.rabbitmq.password@
    virtualHost: @profiles.rabbitmq.virtualhost@
  cloud:
    # 网关配置
    gateway:
      globalcors:
        cors-configurations:
          '[/**]':
            allowedOrigins: "*"
            allowedHeaders: "*"
            allowedMethods: "*"
        default-filters:
          - DedupeResponseHeader=Vary Access-Control-Allow-Origin Access-Control-Allow-Credentials, RETAIN_FIRST
      httpclient:
        connect-timeout: 10000
        response-timeout: 5s
      # 打印请求日志(自定义)
      requestLog: true
      discovery:
        locator:
          lowerCaseServiceId: true
          enabled: true
      routes:
        # 基础服务
        - id: base-manager
#          uri: http://127.0.0.1:17211
          uri: lb://base-manager
          predicates:
            - Path=/base/**
    #              filters:
    #                - StripPrefix=1
          metadata:
            response-timeout: 200000
            connect-timeout: 200000
        # 门户服务
        - id: portal-manager
          #          uri: http://127.0.0.1:17211
          uri: lb://portal-manager
          predicates:
            - Path=/zwfw/**
        # 设备管理服务
        - id: device-manager
          uri: http://192.168.0.98:18222
          #uri: lb://device-manager
          predicates:
            - Path=/m/**
        # 日志服务
        - id: log-manager
          #          uri: http://127.0.0.1:17211
          uri: lb://log-manager
          predicates:
            - Path=/logservice/**
    nacos:
      # Nacos 作为注册中心的配置项,对应 NacosDiscoveryProperties 配置类
      discovery:
        server-addr: @profiles.nacos.server-addr@ # Nacos 服务器地址
        group: @profiles.nacos.group@
        namespace: @profiles.nacos.namespace@
      config:
        server-addr: ${spring.cloud.nacos.discovery.server-addr} # Nacos 服务器地址
        group: ${spring.cloud.nacos.discovery.group}
        namespace: ${spring.cloud.nacos.discovery.namespace} # Nacos 命名空间 dev 的编号
        file-extension: yaml

# 安全配置
security:
  # 验证码
  captcha:
    # 是否开启验证码
    enabled: true
    # 验证码类型 math 数组计算 char 字符验证
    type: MATH
    # line 线段干扰 circle 圆圈干扰 shear 扭曲干扰
    category: CIRCLE
    # 数字验证码位数
    numberLength: 1
    # 字符验证码长度
    charLength: 4
  # 防止XSS攻击
  xss:
    enabled: true
    excludeUrls:
      - /system/notice
  # 不校验白名单
  ignore:
    whites:
      - /code
      - /auth/logout
      - /base/login/login
      - /auth/smsLogin
      - /auth/xcxLogin
      - /auth/register
      - /resource/sms/code
logging:
  level:
    reactor.netty: info
    org.springframework.cloud.gateway: TRACE