application-dev.yaml 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159
  1. spring:
  2. # Gateway 配置
  3. cloud:
  4. gateway:
  5. # 路由配置
  6. routes:
  7. # ========== v1 版本路由(新规范)==========
  8. # 管理后台 - v1 - 会员服务
  9. - id: admin-v1-member-service
  10. uri: lb://xdz-user # 使用 Nacos 服务发现,服务名:xdz-user
  11. predicates:
  12. - Path=/api/v1/admin/member/**
  13. filters:
  14. - StripPrefix=2 # 去掉 /api/v1,转发 /admin/member/...
  15. # 管理后台 - v1 - 车辆服务
  16. - id: admin-v1-vehicle-service
  17. uri: lb://xdz-vehicle # 使用 Nacos 服务发现,服务名:xdz-vehicle
  18. predicates:
  19. - Path=/api/v1/admin/vehicle/**
  20. filters:
  21. - StripPrefix=2 # 去掉 /api/v1,转发 /admin/vehicle/...
  22. # 管理后台 - v1 - 服务管理(通过业务服务代理)
  23. - id: admin-v1-service-management
  24. uri: lb://xdz-business # 使用 Nacos 服务发现,服务名:xdz-business
  25. predicates:
  26. - Path=/api/v1/admin/service/**
  27. filters:
  28. - StripPrefix=2 # 去掉 /api/v1,转发 /admin/service/...
  29. # 管理后台 - v1 - 权限服务(角色)- 转发到 user-server
  30. # 注意:此路由必须在系统服务路由之前,确保更具体的路径优先匹配
  31. - id: admin-v1-role-service
  32. uri: lb://xdz-user # 使用 Nacos 服务发现,服务名:xdz-user
  33. predicates:
  34. - Path=/api/v1/admin/system/role/**
  35. filters:
  36. - StripPrefix=2 # 去掉 /api/v1,转发 /admin/system/role/...
  37. order: -1 # 设置更小的数字,确保在系统服务路由(order: 0)之前匹配
  38. # 管理后台 - v1 - 权限服务(菜单)- 转发到 user-server
  39. - id: admin-v1-menu-service
  40. uri: lb://xdz-user # 使用 Nacos 服务发现,服务名:xdz-user
  41. predicates:
  42. - Path=/api/v1/admin/system/menu/**
  43. filters:
  44. - StripPrefix=2 # 去掉 /api/v1,转发 /admin/system/menu/...
  45. order: -1 # 设置更小的数字,确保在系统服务路由(order: 0)之前匹配
  46. # 管理后台 - v1 - 权限服务(权限)- 转发到 user-server
  47. - id: admin-v1-permission-service
  48. uri: lb://xdz-user # 使用 Nacos 服务发现,服务名:xdz-user
  49. predicates:
  50. - Path=/api/v1/admin/system/permission/**
  51. filters:
  52. - StripPrefix=2 # 去掉 /api/v1,转发 /admin/system/permission/...
  53. order: -1 # 设置更小的数字,确保在系统服务路由(order: 0)之前匹配
  54. # 管理后台 - v1 - 系统服务(其他系统接口)
  55. - id: admin-v1-system-service
  56. uri: lb://xdz-business # 使用 Nacos 服务发现,服务名:xdz-business
  57. predicates:
  58. - Path=/api/v1/admin/system/**
  59. filters:
  60. - StripPrefix=2 # 去掉 /api/v1,转发 /admin/system/...
  61. order: 0 # 默认优先级,低于权限服务路由
  62. # 管理后台 - v1 - 默认路由
  63. - id: admin-v1-default-service
  64. uri: lb://xdz-business # 使用 Nacos 服务发现,服务名:xdz-business
  65. predicates:
  66. - Path=/api/v1/admin/**
  67. filters:
  68. - StripPrefix=2 # 去掉 /api/v1,转发 /admin/...
  69. # APP端 - v1 - 会员服务
  70. - id: app-v1-member-service
  71. uri: lb://xdz-user # 使用 Nacos 服务发现,服务名:xdz-user
  72. predicates:
  73. - Path=/api/v1/app/member/**
  74. filters:
  75. - StripPrefix=2 # 去掉 /api/v1,转发 /app/member/...
  76. # APP端 - v1 - 社区服务
  77. - id: app-v1-community-service
  78. uri: lb://xdz-business # 使用 Nacos 服务发现,服务名:xdz-business
  79. predicates:
  80. - Path=/api/v1/app/community/**
  81. filters:
  82. - StripPrefix=2 # 去掉 /api/v1,转发 /app/community/...
  83. # APP端 - v1 - 默认路由
  84. - id: app-v1-default-service
  85. uri: lb://xdz-business # 使用 Nacos 服务发现,服务名:xdz-business
  86. predicates:
  87. - Path=/api/v1/app/**
  88. filters:
  89. - StripPrefix=2 # 去掉 /api/v1,转发 /app/...
  90. # ========== 前端开发服务器路由 ==========
  91. # 前端页面和静态资源(所有非 API 请求)
  92. # 注意:连接服务器时,前端应该部署在服务器上,这里可以注释掉或配置为服务器前端地址
  93. # - id: frontend-dev-server
  94. # uri: http://${SERVER_FRONTEND_HOST:服务器前端地址}:${SERVER_FRONTEND_PORT:8082}
  95. # predicates:
  96. # - Path=/**
  97. # filters:
  98. # - StripPrefix=0 # 不删除前缀,直接转发
  99. # order: 9999
  100. # 全局 CORS 配置
  101. globalcors:
  102. cors-configurations:
  103. '[/**]':
  104. # 注意:当 allowCredentials=true 时,不能使用 "*",必须明确列出允许的源
  105. # 或者使用 allowedOriginPatterns 支持通配符
  106. allowedOriginPatterns:
  107. - "http://localhost:*" # 支持所有 localhost 端口
  108. - "http://127.0.0.1:*" # 支持所有 127.0.0.1 端口
  109. - "${SERVER_FRONTEND_ORIGIN:http://服务器前端地址:*}" # 服务器前端地址(支持环境变量)
  110. allowedMethods:
  111. - GET
  112. - POST
  113. - PUT
  114. - DELETE
  115. - OPTIONS
  116. - PATCH
  117. allowedHeaders: "*"
  118. exposedHeaders:
  119. - Authorization
  120. - Content-Type
  121. allowCredentials: true
  122. maxAge: 3600 # 预检请求缓存时间(秒)
  123. # Nacos 配置(连接服务器时启用服务发现)
  124. nacos:
  125. server-addr: 119.45.95.228:10030 # 本地 Nacos 服务器地址
  126. # 方式一:用户名密码认证(当前使用)
  127. username: nacos # Nacos 账号
  128. password: Nacos@202612 # Nacos 密码
  129. # 方式二:AK/SK 认证(如果服务器要求使用 AK/SK,取消下面注释并注释掉上面的 username 和 password)
  130. # access-key: 你的AccessKey
  131. # secret-key: 你的SecretKey
  132. discovery:
  133. enabled: true # 启用服务发现
  134. namespace: dev # 命名空间(开发环境)
  135. group: DEFAULT_GROUP
  136. config:
  137. enabled: false # Gateway 不使用配置中心
  138. import-check:
  139. enabled: false
  140. # 日志配置(开发环境使用 DEBUG 级别,便于调试)
  141. logging:
  142. level:
  143. org.springframework.cloud.gateway: DEBUG
  144. com.xindazhou.gateway: DEBUG