Edge for Private Cloud v. 4.17.05
如果您想在 Edge 和后端目标服务器之间使用 HTTP 转发代理,则必须在 Edge 消息处理器节点上配置出站代理设置属性。这些属性用于配置消息处理器,以将目标请求从 Edge 路由到 HTTP 转发代理。
如需配置消息处理器,请修改 /opt/apigee/customer/application/message-processor.properties,然后重启消息处理器。如果 message-processor.properties 文件不存在,请创建该文件。
设置以下属性以配置消息处理器:
|
属性 |
说明 |
|---|---|
|
conf_http_HTTPClient.use.proxy |
指定所有 API 代理默认使用转发代理 (true) 或默认不使用转发代理 (false)。 |
|
conf_http_HTTPClient.use.tunneling |
默认情况下,Edge 会对所有流量使用隧道。如需默认停用隧道,请将此属性设置为 false。 |
|
conf/http.properties+HTTPClient.proxy.type |
将 HTTP 代理的类型指定为 HTTP 或 HTTPS。默认情况下,它使用 HTTP。 |
|
conf/http.properties+HTTPClient.proxy.host |
指定 HTTP 代理运行所在的主机名或 IP 地址。 |
|
conf/http.properties+HTTPClient.proxy.port |
指定 HTTP 代理运行所在的端口。如果省略此属性,默认情况下,它将使用端口 80(用于 HTTP)和端口 443(用于 HTTPS)。 |
|
conf/http.properties+HTTPClient.proxy.user |
如果 HTTP 代理需要基本身份验证,则使用这些属性提供授权详细信息。 |
例如:
conf_http_HTTPClient.use.proxy=true conf_http_HTTPClient.use.tunneling=false conf/http.properties+HTTPClient.proxy.type=HTTP conf/http.properties+HTTPClient.proxy.host=my.host.com conf/http.properties+HTTPClient.proxy.port=3128 conf/http.properties+HTTPClient.proxy.user=uName conf/http.properties+HTTPClient.proxy.password=pWord
设置这些属性后,请务必重启消息处理器:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
如果为消息处理器配置了转发代理,则从 API 代理流向后端目标的所有流量都会通过指定的 HTTP 转发代理。如果 API 代理的特定目标的流量应直接流向后端目标,从而绕过转发代理,请在目标端点中设置以下属性以替换 HTTP 转发代理:
<Property name="use.proxy">false</Property>
如需详细了解如何在目标端点上设置属性,请参阅端点属性参考文档。
如果您不希望任何目标默认使用 HTTP 转发代理,则可以按如下所示指定 http.properties:
conf_http_HTTPClient.use.proxy=false
然后,对于您要通过 HTTP 转发代理的任何目标端点,请将 use.proxy 设置为 true:
<Property name="use.proxy">true</Property>
默认情况下,Edge 会使用隧道技术将流量传输到代理。如需默认停用隧道,请在 message-processor.properties 文件中设置以下属性:
conf_http_HTTPClient.use.tunneling=false
对于特定目标,如果您想停用隧道,请在目标端点中设置 use.proxy.tunneling 属性。如果目标使用 TLS/SSL,则该属性会被忽略,并且始终通过隧道发送消息:
<Property name="use.proxy.tunneling">false</Property>
如需让 Edge 本身充当前向代理(从后端服务接收请求并将其路由到企业外部的互联网),请先在 Edge 上设置 API 代理。然后,后端服务可以向 API 代理发出请求,API 代理随后可以连接到外部服务。