<ph type="x-smartling-placeholder"></ph>
您正在查看 Apigee Edge 文档。
转到
Apigee X 文档。 信息
问题
在适用于私有云的 Edge 中,在 Edge 界面中跟踪 API 时,您会看到 在跟踪窗口的状态列中返回 HTTP 304 响应:
错误消息
没有错误消息 - API 代理调用实际上会返回成功 (例如 HTTP 200)不过,Edge 界面中的轨迹窗口会显示 返回 HTTP 304 响应,并且不收集跟踪记录数据。
可能的原因
在适用于私有云的 Edge 中,Edge 界面尝试跟踪 API 代理 通过专用 IP 地址访问
Edge 界面中的轨迹工具能够向任何网址发送 API 请求。 在 Edge 界面与其他内部 服务,那么恶意用户可能会滥用跟踪工具 例如 localhost 或 127.0.0.1。
在生产环境中,您通常会保留默认值不变, 使用户无法跟踪专用 IP 地址 例如,下图就是公开版 Edge 界面 已部署
但是,对于内部开发或测试环境,您可以替换 此默认值可让您的 API 开发者跟踪任何 IP 地址。 通常,开发/测试环境受防火墙保护, 允许公开访问。
注意 :建议您最好将默认设置保留为 防止对专用 IP 地址的跟踪记录访问,即使是在开发/测试环境中, 除非您遇到必须启用它的情况
原因:正在尝试通过专用 IP 地址访问 API 代理
默认情况下,私有云的 Edge 界面会阻止用户执行以下操作 跟踪通过专用 IP 地址进行的 API 调用。 专用 IP 地址列表包括:
- 环回地址(127.0.0.1 或 localhost)
- 站点本地地址(适用于 IPv4 - 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16)
- 任何本地地址(解析为 localhost 的任何地址)
例如,以下 curl 命令使用 IP 地址 127.0.0.1(被视为专用 IP 地址):
curl http://127.0.0.1:9001/myapiproxy
在此调用的跟踪窗口中,即使 curl 命令返回成功,您也会看到 HTTP 304 响应。
分辨率
要让 Edge 界面跟踪 Edge 的专用 IP 地址,
Private Cloud 时,请在 ui.properties
中设置以下令牌:
conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
如需设置此属性,请执行以下操作:
- 通过编辑器打开
ui.properties
文件。 如果文件 不存在,请创建它。
vi /opt/apigee/customer/application/ui.properties
- 将以下属性设为 true:
conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
- 将所做的更改保存到
ui.properties
。 - 确保属性文件归“apigee”所有用户:
chown apigee:apigee /opt/apigee/customer/application/ui.properties
- 重启 Edge 界面:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
Edge 界面现在可以访问轨迹工具中的专用 IP 地址。
如果以后要禁止界面通过专用 IP 地址跟踪请求,请按以下步骤操作:
修改 ui.properties
以将该属性设置为 false
,
然后重启 Edge 界面。
相关文档(可选)
有关更多信息,请参见 允许边缘界面访问本地 IP 地址。