通过代理访问后端

配置服务器可以通过 HTTP 或 HTTPS 代理访问 Git 或 Vault 后端。此行为由proxy.httpproxy.https 下的设置控制,适用于 Git 或 Vault。这些设置针对每个资源库,因此,如果您使用的是组合环境资源库,则必须为组合中的每个后端单独配置代理设置。如果使用需要为 HTTP 和 HTTPS URL 使用单独代理服务器的网络,则可以为单个后端同时配置 HTTP 和 HTTPS 代理设置:在这种情况下,http 访问将使用http 代理,https 访问将使用https 代理。此外,您可以指定一个用于两种协议的唯一代理,该代理将在应用程序和代理之间使用代理定义协议。

下表描述了 HTTP 和 HTTPS 代理的代理配置属性。所有这些属性都必须以proxy.httpproxy.https 为前缀。

表 1. 代理配置属性
属性名称 备注

host

代理的主机。

port

用于访问代理的端口。

nonProxyHosts

配置服务器应在代理外部访问的任何主机。如果为proxy.http.nonProxyHostsproxy.https.nonProxyHosts 都提供了值,则将使用proxy.http 值。

username

用于向代理进行身份验证的用户名。如果为proxy.http.usernameproxy.https.username 都提供了值,则将使用proxy.http 值。

password

用于向代理进行身份验证的密码。如果为proxy.http.passwordproxy.https.password 都提供了值,则将使用proxy.http 值。

以下配置使用 HTTPS 代理来访问 Git 存储库。

spring:
  profiles:
    active: git
  cloud:
    config:
      server:
        git:
          uri: https://github.com/spring-cloud-samples/config-repo
          proxy:
            https:
              host: my-proxy.host.io
              password: myproxypassword
              port: '3128'
              username: myproxyusername
              nonProxyHosts: example.com